From 6345a0cbbfaa3edb31b6e12623e22fb64e22d4a0 Mon Sep 17 00:00:00 2001 From: Giuseppe Careri Date: Thu, 26 Apr 2018 14:16:53 +0200 Subject: [PATCH] Built motion from commit 70d17190.|2.0.55 --- apidoc/api_data.js | 2 +- apidoc/api_data.json | 2 +- apidoc/api_project.js | 2 +- apidoc/api_project.json | 2 +- package.json | 2 +- public/app/footer/i18n/da.json | 6 + public/app/footer/i18n/de.json | 6 + public/app/footer/i18n/en.json | 6 + public/app/footer/i18n/es.json | 6 + public/app/footer/i18n/fa.json | 6 + public/app/footer/i18n/fi.json | 6 + public/app/footer/i18n/fr.json | 6 + public/app/footer/i18n/hi.json | 6 + public/app/footer/i18n/it.json | 6 + public/app/footer/i18n/ja.json | 6 + public/app/footer/i18n/ko.json | 6 + public/app/footer/i18n/lv.json | 6 + public/app/footer/i18n/nl.json | 6 + public/app/footer/i18n/no.json | 6 + public/app/footer/i18n/pl.json | 6 + public/app/footer/i18n/pt-PT.json | 6 + public/app/footer/i18n/ru.json | 6 + public/app/footer/i18n/sv.json | 6 + public/app/footer/i18n/tr.json | 6 + public/app/footer/i18n/zh-CN.json | 6 + public/app/footer/i18n/zh-TW.json | 6 + public/app/main/apps/dashboards/i18n/da.json | 6 +- public/app/main/apps/dashboards/i18n/de.json | 6 +- public/app/main/apps/dashboards/i18n/en.json | 4 + public/app/main/apps/dashboards/i18n/es.json | 6 +- public/app/main/apps/dashboards/i18n/fa.json | 6 +- public/app/main/apps/dashboards/i18n/fi.json | 6 +- public/app/main/apps/dashboards/i18n/fr.json | 6 +- public/app/main/apps/dashboards/i18n/hi.json | 6 +- public/app/main/apps/dashboards/i18n/it.json | 4 + public/app/main/apps/dashboards/i18n/ja.json | 6 +- public/app/main/apps/dashboards/i18n/ko.json | 6 +- public/app/main/apps/dashboards/i18n/lv.json | 6 +- public/app/main/apps/dashboards/i18n/nl.json | 6 +- public/app/main/apps/dashboards/i18n/no.json | 6 +- public/app/main/apps/dashboards/i18n/pl.json | 6 +- public/app/main/apps/dashboards/i18n/pt-PT.json | 6 +- public/app/main/apps/dashboards/i18n/ru.json | 6 +- public/app/main/apps/dashboards/i18n/sv.json | 6 +- public/app/main/apps/dashboards/i18n/tr.json | 6 +- public/app/main/apps/dashboards/i18n/zh-CN.json | 6 +- public/app/main/apps/dashboards/i18n/zh-TW.json | 6 +- public/app/main/apps/mail/i18n/da.json | 8 +- public/app/main/apps/mail/i18n/de.json | 8 +- public/app/main/apps/mail/i18n/en.json | 6 + public/app/main/apps/mail/i18n/es.json | 8 +- public/app/main/apps/mail/i18n/fa.json | 8 +- public/app/main/apps/mail/i18n/fi.json | 8 +- public/app/main/apps/mail/i18n/fr.json | 8 +- public/app/main/apps/mail/i18n/hi.json | 8 +- public/app/main/apps/mail/i18n/it.json | 6 + public/app/main/apps/mail/i18n/ja.json | 8 +- public/app/main/apps/mail/i18n/ko.json | 8 +- public/app/main/apps/mail/i18n/lv.json | 8 +- public/app/main/apps/mail/i18n/nl.json | 8 +- public/app/main/apps/mail/i18n/no.json | 8 +- public/app/main/apps/mail/i18n/pl.json | 8 +- public/app/main/apps/mail/i18n/pt-PT.json | 8 +- public/app/main/apps/mail/i18n/ru.json | 8 +- public/app/main/apps/mail/i18n/sv.json | 8 +- public/app/main/apps/mail/i18n/tr.json | 8 +- public/app/main/apps/mail/i18n/zh-CN.json | 8 +- public/app/main/apps/mail/i18n/zh-TW.json | 8 +- public/app/main/apps/sms/i18n/da.json | 6 +- public/app/main/apps/sms/i18n/de.json | 6 +- public/app/main/apps/sms/i18n/en.json | 2 + public/app/main/apps/sms/i18n/es.json | 6 +- public/app/main/apps/sms/i18n/fa.json | 6 +- public/app/main/apps/sms/i18n/fi.json | 6 +- public/app/main/apps/sms/i18n/fr.json | 6 +- public/app/main/apps/sms/i18n/hi.json | 6 +- public/app/main/apps/sms/i18n/it.json | 2 + public/app/main/apps/sms/i18n/ja.json | 6 +- public/app/main/apps/sms/i18n/ko.json | 6 +- public/app/main/apps/sms/i18n/lv.json | 6 +- public/app/main/apps/sms/i18n/nl.json | 6 +- public/app/main/apps/sms/i18n/no.json | 6 +- public/app/main/apps/sms/i18n/pl.json | 6 +- public/app/main/apps/sms/i18n/pt-PT.json | 6 +- public/app/main/apps/sms/i18n/ru.json | 6 +- public/app/main/apps/sms/i18n/sv.json | 6 +- public/app/main/apps/sms/i18n/tr.json | 6 +- public/app/main/apps/sms/i18n/zh-CN.json | 6 +- public/app/main/apps/sms/i18n/zh-TW.json | 6 +- public/index.html | 6 +- public/scripts/app.0eff18c6.js | 1 + public/scripts/app.a88b0b5d.js | 1 - public/scripts/vendor.5e480a5a.js | 1 + public/scripts/vendor.78e781ac.js | 1 - public/styles/app.1f85e662.css | 1 + public/styles/app.7ccf5ab2.css | 1 - server/api/action/action.attributes.js | 2 +- server/api/action/action.controller.js | 2 +- server/api/action/action.model.js | 2 +- server/api/action/action.rpc.js | 2 +- server/api/action/index.js | 2 +- .../analyticCustomReport.attributes.js | 2 +- .../analyticCustomReport.controller.js | 2 +- .../analyticCustomReport.model.js | 2 +- .../analyticCustomReport.rpc.js | 2 +- server/api/analyticCustomReport/index.js | 2 +- .../analyticDefaultReport.attributes.js | 2 +- .../analyticDefaultReport.controller.js | 2 +- .../analyticDefaultReport.model.js | 2 +- .../analyticDefaultReport.rpc.js | 2 +- server/api/analyticDefaultReport/index.js | 2 +- .../analyticExtractedReport.attributes.js | 2 +- .../analyticExtractedReport.controller.js | 2 +- .../analyticExtractedReport.model.js | 2 +- .../analyticExtractedReport.rpc.js | 2 +- server/api/analyticExtractedReport/index.js | 2 +- .../analyticFieldReport.attributes.js | 2 +- .../analyticFieldReport.controller.js | 2 +- .../analyticFieldReport.model.js | 2 +- .../analyticFieldReport/analyticFieldReport.rpc.js | 2 +- server/api/analyticFieldReport/index.js | 2 +- .../analyticMetric/analyticMetric.attributes.js | 2 +- .../analyticMetric/analyticMetric.controller.js | 2 +- server/api/analyticMetric/analyticMetric.model.js | 2 +- server/api/analyticMetric/analyticMetric.rpc.js | 2 +- server/api/analyticMetric/index.js | 2 +- .../analyticTreeReport.attributes.js | 2 +- .../analyticTreeReport.controller.js | 2 +- .../analyticTreeReport/analyticTreeReport.model.js | 2 +- .../analyticTreeReport/analyticTreeReport.rpc.js | 2 +- server/api/analyticTreeReport/index.js | 2 +- server/api/attachment/attachment.attributes.js | 2 +- server/api/attachment/attachment.controller.js | 2 +- server/api/attachment/attachment.model.js | 2 +- server/api/attachment/attachment.rpc.js | 2 +- server/api/attachment/index.js | 2 +- server/api/authGoogle/authGoogle.controller.js | 2 +- server/api/authGoogle/index.js | 2 +- server/api/authLocal/authLocal.controller.js | 2 +- server/api/authLocal/index.js | 2 +- server/api/automation/automation.attributes.js | 2 +- server/api/automation/automation.controller.js | 2 +- server/api/automation/automation.model.js | 2 +- server/api/automation/automation.rpc.js | 2 +- server/api/automation/index.js | 2 +- server/api/campaign/campaign.attributes.js | 2 +- server/api/campaign/campaign.controller.js | 2 +- server/api/campaign/campaign.model.js | 2 +- server/api/campaign/campaign.rpc.js | 2 +- server/api/campaign/index.js | 2 +- server/api/cannedAnswer/cannedAnswer.attributes.js | 2 +- server/api/cannedAnswer/cannedAnswer.controller.js | 2 +- server/api/cannedAnswer/cannedAnswer.model.js | 2 +- server/api/cannedAnswer/cannedAnswer.rpc.js | 2 +- server/api/cannedAnswer/index.js | 2 +- server/api/cdr/cdr.attributes.js | 2 +- server/api/cdr/cdr.controller.js | 2 +- server/api/cdr/cdr.model.js | 2 +- server/api/cdr/cdr.rpc.js | 2 +- server/api/cdr/index.js | 2 +- .../chatApplication/chatApplication.attributes.js | 2 +- .../chatApplication/chatApplication.controller.js | 2 +- .../api/chatApplication/chatApplication.model.js | 2 +- server/api/chatApplication/chatApplication.rpc.js | 2 +- server/api/chatApplication/index.js | 2 +- .../chatDisposition/chatDisposition.attributes.js | 2 +- .../chatDisposition/chatDisposition.controller.js | 2 +- .../api/chatDisposition/chatDisposition.model.js | 2 +- server/api/chatDisposition/chatDisposition.rpc.js | 2 +- server/api/chatDisposition/index.js | 2 +- server/api/chatGroup/chatGroup.attributes.js | 2 +- server/api/chatGroup/chatGroup.controller.js | 2 +- server/api/chatGroup/chatGroup.events.js | 2 +- server/api/chatGroup/chatGroup.model.js | 2 +- server/api/chatGroup/chatGroup.rpc.js | 2 +- server/api/chatGroup/chatGroup.socket.js | 2 +- server/api/chatGroup/index.js | 2 +- .../chatInteraction/chatInteraction.attributes.js | 2 +- .../chatInteraction/chatInteraction.controller.js | 2 +- .../api/chatInteraction/chatInteraction.events.js | 2 +- .../api/chatInteraction/chatInteraction.model.js | 2 +- server/api/chatInteraction/chatInteraction.rpc.js | 2 +- .../api/chatInteraction/chatInteraction.socket.js | 2 +- server/api/chatInteraction/index.js | 2 +- .../chatInternalMessage.attributes.js | 2 +- .../chatInternalMessage.controller.js | 2 +- .../chatInternalMessage.events.js | 2 +- .../chatInternalMessage.model.js | 2 +- .../chatInternalMessage/chatInternalMessage.rpc.js | 2 +- .../chatInternalMessage.socket.js | 2 +- server/api/chatInternalMessage/index.js | 2 +- server/api/chatMessage/chatMessage.attributes.js | 2 +- server/api/chatMessage/chatMessage.controller.js | 2 +- server/api/chatMessage/chatMessage.events.js | 2 +- server/api/chatMessage/chatMessage.model.js | 2 +- server/api/chatMessage/chatMessage.rpc.js | 2 +- server/api/chatMessage/chatMessage.socket.js | 2 +- server/api/chatMessage/index.js | 2 +- .../chatOfflineMessage.attributes.js | 2 +- .../chatOfflineMessage.controller.js | 2 +- .../chatOfflineMessage/chatOfflineMessage.model.js | 2 +- .../chatOfflineMessage/chatOfflineMessage.rpc.js | 2 +- server/api/chatOfflineMessage/index.js | 2 +- .../chatProactiveAction.attributes.js | 2 +- .../chatProactiveAction.controller.js | 2 +- .../chatProactiveAction.model.js | 2 +- .../chatProactiveAction/chatProactiveAction.rpc.js | 2 +- server/api/chatProactiveAction/index.js | 2 +- server/api/chatQueue/chatQueue.attributes.js | 2 +- server/api/chatQueue/chatQueue.controller.js | 2 +- server/api/chatQueue/chatQueue.events.js | 2 +- server/api/chatQueue/chatQueue.model.js | 2 +- server/api/chatQueue/chatQueue.rpc.js | 2 +- server/api/chatQueue/chatQueue.socket.js | 2 +- server/api/chatQueue/index.js | 2 +- .../chatQueueReport/chatQueueReport.attributes.js | 2 +- .../chatQueueReport/chatQueueReport.controller.js | 2 +- .../api/chatQueueReport/chatQueueReport.model.js | 2 +- server/api/chatQueueReport/chatQueueReport.rpc.js | 2 +- server/api/chatQueueReport/index.js | 2 +- server/api/chatWebsite/chatWebsite.attributes.js | 2 +- server/api/chatWebsite/chatWebsite.controller.js | 2 +- server/api/chatWebsite/chatWebsite.model.js | 2 +- server/api/chatWebsite/chatWebsite.rpc.js | 2 +- server/api/chatWebsite/index.js | 2 +- server/api/cmCompany/cmCompany.attributes.js | 2 +- server/api/cmCompany/cmCompany.controller.js | 2 +- server/api/cmCompany/cmCompany.model.js | 2 +- server/api/cmCompany/cmCompany.rpc.js | 2 +- server/api/cmCompany/index.js | 2 +- server/api/cmContact/cmContact.attributes.js | 2 +- server/api/cmContact/cmContact.controller.js | 2 +- server/api/cmContact/cmContact.events.js | 2 +- server/api/cmContact/cmContact.model.js | 2 +- server/api/cmContact/cmContact.rpc.js | 2 +- server/api/cmContact/cmContact.socket.js | 2 +- server/api/cmContact/index.js | 2 +- .../api/cmCustomField/cmCustomField.attributes.js | 2 +- .../api/cmCustomField/cmCustomField.controller.js | 2 +- server/api/cmCustomField/cmCustomField.model.js | 2 +- server/api/cmCustomField/cmCustomField.rpc.js | 2 +- server/api/cmCustomField/index.js | 2 +- server/api/cmHopper/cmHopper.attributes.js | 2 +- server/api/cmHopper/cmHopper.controller.js | 2 +- server/api/cmHopper/cmHopper.model.js | 2 +- server/api/cmHopper/cmHopper.rpc.js | 2 +- server/api/cmHopper/index.js | 2 +- .../api/cmHopperBlack/cmHopperBlack.attributes.js | 2 +- .../api/cmHopperBlack/cmHopperBlack.controller.js | 2 +- server/api/cmHopperBlack/cmHopperBlack.model.js | 2 +- server/api/cmHopperBlack/cmHopperBlack.rpc.js | 2 +- server/api/cmHopperBlack/index.js | 2 +- .../api/cmHopperFinal/cmHopperFinal.attributes.js | 2 +- .../api/cmHopperFinal/cmHopperFinal.controller.js | 2 +- server/api/cmHopperFinal/cmHopperFinal.model.js | 2 +- server/api/cmHopperFinal/cmHopperFinal.rpc.js | 2 +- server/api/cmHopperFinal/index.js | 2 +- .../cmHopperHistory/cmHopperHistory.attributes.js | 2 +- .../cmHopperHistory/cmHopperHistory.controller.js | 2 +- .../api/cmHopperHistory/cmHopperHistory.model.js | 2 +- server/api/cmHopperHistory/cmHopperHistory.rpc.js | 2 +- server/api/cmHopperHistory/index.js | 2 +- server/api/cmList/cmList.attributes.js | 2 +- server/api/cmList/cmList.controller.js | 2 +- server/api/cmList/cmList.events.js | 2 +- server/api/cmList/cmList.model.js | 2 +- server/api/cmList/cmList.rpc.js | 2 +- server/api/cmList/cmList.socket.js | 2 +- server/api/cmList/index.js | 2 +- server/api/condition/condition.attributes.js | 2 +- server/api/condition/condition.controller.js | 2 +- server/api/condition/condition.model.js | 2 +- server/api/condition/condition.rpc.js | 2 +- server/api/condition/index.js | 2 +- server/api/dashboard/dashboard.attributes.js | 2 +- server/api/dashboard/dashboard.controller.js | 2 +- server/api/dashboard/dashboard.events.js | 2 +- server/api/dashboard/dashboard.model.js | 2 +- server/api/dashboard/dashboard.rpc.js | 2 +- server/api/dashboard/dashboard.socket.js | 2 +- server/api/dashboard/index.js | 2 +- .../api/dashboardItem/dashboardItem.attributes.js | 2 +- .../api/dashboardItem/dashboardItem.controller.js | 2 +- server/api/dashboardItem/dashboardItem.events.js | 2 +- server/api/dashboardItem/dashboardItem.model.js | 2 +- server/api/dashboardItem/dashboardItem.rpc.js | 2 +- server/api/dashboardItem/dashboardItem.socket.js | 2 +- server/api/dashboardItem/index.js | 2 +- server/api/faxAccount/faxAccount.attributes.js | 2 +- server/api/faxAccount/faxAccount.controller.js | 2 +- server/api/faxAccount/faxAccount.model.js | 2 +- server/api/faxAccount/faxAccount.rpc.js | 2 +- server/api/faxAccount/index.js | 2 +- .../faxApplication/faxApplication.attributes.js | 2 +- .../faxApplication/faxApplication.controller.js | 2 +- server/api/faxApplication/faxApplication.model.js | 2 +- server/api/faxApplication/faxApplication.rpc.js | 2 +- server/api/faxApplication/index.js | 2 +- .../faxDisposition/faxDisposition.attributes.js | 2 +- .../faxDisposition/faxDisposition.controller.js | 2 +- server/api/faxDisposition/faxDisposition.model.js | 2 +- server/api/faxDisposition/faxDisposition.rpc.js | 2 +- server/api/faxDisposition/index.js | 2 +- .../faxInteraction/faxInteraction.attributes.js | 2 +- .../faxInteraction/faxInteraction.controller.js | 2 +- server/api/faxInteraction/faxInteraction.events.js | 2 +- server/api/faxInteraction/faxInteraction.model.js | 2 +- server/api/faxInteraction/faxInteraction.rpc.js | 2 +- server/api/faxInteraction/faxInteraction.socket.js | 2 +- server/api/faxInteraction/index.js | 2 +- server/api/faxMessage/faxMessage.attributes.js | 2 +- server/api/faxMessage/faxMessage.controller.js | 2 +- server/api/faxMessage/faxMessage.events.js | 2 +- server/api/faxMessage/faxMessage.model.js | 2 +- server/api/faxMessage/faxMessage.rpc.js | 2 +- server/api/faxMessage/faxMessage.socket.js | 2 +- server/api/faxMessage/index.js | 2 +- server/api/faxQueue/faxQueue.attributes.js | 2 +- server/api/faxQueue/faxQueue.controller.js | 2 +- server/api/faxQueue/faxQueue.events.js | 2 +- server/api/faxQueue/faxQueue.model.js | 2 +- server/api/faxQueue/faxQueue.rpc.js | 2 +- server/api/faxQueue/faxQueue.socket.js | 2 +- server/api/faxQueue/index.js | 2 +- .../faxQueueReport/faxQueueReport.attributes.js | 2 +- .../faxQueueReport/faxQueueReport.controller.js | 2 +- server/api/faxQueueReport/faxQueueReport.model.js | 2 +- server/api/faxQueueReport/faxQueueReport.rpc.js | 2 +- server/api/faxQueueReport/index.js | 2 +- server/api/intDeskAccount/index.js | 2 +- .../intDeskAccount/intDeskAccount.attributes.js | 2 +- .../intDeskAccount/intDeskAccount.controller.js | 2 +- server/api/intDeskAccount/intDeskAccount.model.js | 2 +- server/api/intDeskAccount/intDeskAccount.rpc.js | 2 +- server/api/intDeskConfiguration/index.js | 2 +- .../intDeskConfiguration.attributes.js | 2 +- .../intDeskConfiguration.controller.js | 2 +- .../intDeskConfiguration.model.js | 2 +- .../intDeskConfiguration.rpc.js | 2 +- server/api/intDeskField/index.js | 2 +- server/api/intDeskField/intDeskField.attributes.js | 2 +- server/api/intDeskField/intDeskField.controller.js | 2 +- server/api/intDeskField/intDeskField.model.js | 2 +- server/api/intDeskField/intDeskField.rpc.js | 2 +- server/api/intFreshdeskAccount/index.js | 2 +- .../intFreshdeskAccount.attributes.js | 2 +- .../intFreshdeskAccount.controller.js | 2 +- .../intFreshdeskAccount.model.js | 2 +- .../intFreshdeskAccount/intFreshdeskAccount.rpc.js | 2 +- server/api/intFreshdeskConfiguration/index.js | 2 +- .../intFreshdeskConfiguration.attributes.js | 2 +- .../intFreshdeskConfiguration.controller.js | 2 +- .../intFreshdeskConfiguration.model.js | 2 +- .../intFreshdeskConfiguration.rpc.js | 2 +- server/api/intFreshdeskField/index.js | 2 +- .../intFreshdeskField.attributes.js | 2 +- .../intFreshdeskField.controller.js | 2 +- .../intFreshdeskField/intFreshdeskField.model.js | 2 +- .../api/intFreshdeskField/intFreshdeskField.rpc.js | 2 +- server/api/intSalesforceAccount/index.js | 2 +- .../intSalesforceAccount.attributes.js | 2 +- .../intSalesforceAccount.controller.js | 2 +- .../intSalesforceAccount.model.js | 2 +- .../intSalesforceAccount.rpc.js | 2 +- server/api/intSalesforceConfiguration/index.js | 2 +- .../intSalesforceConfiguration.attributes.js | 2 +- .../intSalesforceConfiguration.controller.js | 2 +- .../intSalesforceConfiguration.model.js | 2 +- .../intSalesforceConfiguration.rpc.js | 2 +- server/api/intSalesforceField/index.js | 2 +- .../intSalesforceField.attributes.js | 2 +- .../intSalesforceField.controller.js | 2 +- .../intSalesforceField/intSalesforceField.model.js | 2 +- .../intSalesforceField/intSalesforceField.rpc.js | 2 +- server/api/intSugarcrmAccount/index.js | 2 +- .../intSugarcrmAccount.attributes.js | 2 +- .../intSugarcrmAccount.controller.js | 2 +- .../intSugarcrmAccount/intSugarcrmAccount.model.js | 2 +- .../intSugarcrmAccount/intSugarcrmAccount.rpc.js | 2 +- server/api/intSugarcrmConfiguration/index.js | 2 +- .../intSugarcrmConfiguration.attributes.js | 2 +- .../intSugarcrmConfiguration.controller.js | 2 +- .../intSugarcrmConfiguration.model.js | 2 +- .../intSugarcrmConfiguration.rpc.js | 2 +- server/api/intSugarcrmField/index.js | 2 +- .../intSugarcrmField.attributes.js | 2 +- .../intSugarcrmField.controller.js | 2 +- .../api/intSugarcrmField/intSugarcrmField.model.js | 2 +- .../api/intSugarcrmField/intSugarcrmField.rpc.js | 2 +- server/api/intZendeskAccount/index.js | 2 +- .../intZendeskAccount.attributes.js | 2 +- .../intZendeskAccount.controller.js | 2 +- .../intZendeskAccount/intZendeskAccount.model.js | 2 +- .../api/intZendeskAccount/intZendeskAccount.rpc.js | 2 +- server/api/intZendeskConfiguration/index.js | 2 +- .../intZendeskConfiguration.attributes.js | 2 +- .../intZendeskConfiguration.controller.js | 2 +- .../intZendeskConfiguration.model.js | 2 +- .../intZendeskConfiguration.rpc.js | 2 +- server/api/intZendeskField/index.js | 2 +- .../intZendeskField/intZendeskField.attributes.js | 2 +- .../intZendeskField/intZendeskField.controller.js | 2 +- .../api/intZendeskField/intZendeskField.model.js | 2 +- server/api/intZendeskField/intZendeskField.rpc.js | 2 +- server/api/intZohoAccount/index.js | 2 +- .../intZohoAccount/intZohoAccount.attributes.js | 2 +- .../intZohoAccount/intZohoAccount.controller.js | 2 +- server/api/intZohoAccount/intZohoAccount.model.js | 2 +- server/api/intZohoAccount/intZohoAccount.rpc.js | 2 +- server/api/intZohoConfiguration/index.js | 2 +- .../intZohoConfiguration.attributes.js | 2 +- .../intZohoConfiguration.controller.js | 2 +- .../intZohoConfiguration.model.js | 2 +- .../intZohoConfiguration.rpc.js | 2 +- server/api/intZohoField/index.js | 2 +- server/api/intZohoField/intZohoField.attributes.js | 2 +- server/api/intZohoField/intZohoField.controller.js | 2 +- server/api/intZohoField/intZohoField.model.js | 2 +- server/api/intZohoField/intZohoField.rpc.js | 2 +- server/api/integration/index.js | 2 +- server/api/integration/integration.attributes.js | 2 +- server/api/integration/integration.controller.js | 2 +- server/api/integration/integration.model.js | 2 +- server/api/integration/integration.rpc.js | 2 +- server/api/integrationReport/index.js | 2 +- .../integrationReport.attributes.js | 2 +- .../integrationReport.controller.js | 2 +- .../integrationReport/integrationReport.model.js | 2 +- .../api/integrationReport/integrationReport.rpc.js | 2 +- server/api/interval/index.js | 2 +- server/api/interval/interval.attributes.js | 2 +- server/api/interval/interval.controller.js | 2 +- server/api/interval/interval.model.js | 2 +- server/api/interval/interval.rpc.js | 2 +- server/api/jira/index.js | 2 +- server/api/jira/jira.controller.js | 2 +- server/api/jscriptyAnswerReport/index.js | 2 +- .../jscriptyAnswerReport.attributes.js | 2 +- .../jscriptyAnswerReport.controller.js | 2 +- .../jscriptyAnswerReport.model.js | 2 +- .../jscriptyAnswerReport.rpc.js | 2 +- server/api/jscriptyProject/index.js | 2 +- .../jscriptyProject/jscriptyProject.attributes.js | 2 +- .../jscriptyProject/jscriptyProject.controller.js | 2 +- .../api/jscriptyProject/jscriptyProject.model.js | 2 +- server/api/jscriptyProject/jscriptyProject.rpc.js | 2 +- server/api/jscriptyQuestionReport/index.js | 2 +- .../jscriptyQuestionReport.attributes.js | 2 +- .../jscriptyQuestionReport.controller.js | 2 +- .../jscriptyQuestionReport.model.js | 2 +- .../jscriptyQuestionReport.rpc.js | 2 +- server/api/jscriptySessionReport/index.js | 2 +- .../jscriptySessionReport.attributes.js | 2 +- .../jscriptySessionReport.controller.js | 2 +- .../jscriptySessionReport.model.js | 2 +- .../jscriptySessionReport.rpc.js | 2 +- server/api/license/index.js | 2 +- server/api/license/license.attributes.js | 2 +- server/api/license/license.controller.js | 2 +- server/api/license/license.model.js | 2 +- server/api/license/license.rpc.js | 2 +- server/api/mailAccount/index.js | 2 +- server/api/mailAccount/mailAccount.attributes.js | 2 +- server/api/mailAccount/mailAccount.controller.js | 2 +- server/api/mailAccount/mailAccount.model.js | 2 +- server/api/mailAccount/mailAccount.rpc.js | 2 +- server/api/mailApplication/index.js | 2 +- .../mailApplication/mailApplication.attributes.js | 2 +- .../mailApplication/mailApplication.controller.js | 2 +- .../api/mailApplication/mailApplication.model.js | 2 +- server/api/mailApplication/mailApplication.rpc.js | 2 +- server/api/mailDisposition/index.js | 2 +- .../mailDisposition/mailDisposition.attributes.js | 2 +- .../mailDisposition/mailDisposition.controller.js | 2 +- .../api/mailDisposition/mailDisposition.model.js | 2 +- server/api/mailDisposition/mailDisposition.rpc.js | 2 +- server/api/mailInteraction/index.js | 2 +- .../mailInteraction/mailInteraction.attributes.js | 2 +- .../mailInteraction/mailInteraction.controller.js | 2 +- .../api/mailInteraction/mailInteraction.events.js | 2 +- .../api/mailInteraction/mailInteraction.model.js | 2 +- server/api/mailInteraction/mailInteraction.rpc.js | 2 +- .../api/mailInteraction/mailInteraction.socket.js | 2 +- server/api/mailMessage/index.js | 2 +- server/api/mailMessage/mailMessage.attributes.js | 2 +- server/api/mailMessage/mailMessage.controller.js | 2 +- server/api/mailMessage/mailMessage.events.js | 2 +- server/api/mailMessage/mailMessage.model.js | 2 +- server/api/mailMessage/mailMessage.rpc.js | 2 +- server/api/mailMessage/mailMessage.socket.js | 2 +- server/api/mailQueue/index.js | 2 +- server/api/mailQueue/mailQueue.attributes.js | 2 +- server/api/mailQueue/mailQueue.controller.js | 2 +- server/api/mailQueue/mailQueue.events.js | 2 +- server/api/mailQueue/mailQueue.model.js | 2 +- server/api/mailQueue/mailQueue.rpc.js | 2 +- server/api/mailQueue/mailQueue.socket.js | 2 +- server/api/mailQueueReport/index.js | 2 +- .../mailQueueReport/mailQueueReport.attributes.js | 2 +- .../mailQueueReport/mailQueueReport.controller.js | 2 +- .../api/mailQueueReport/mailQueueReport.model.js | 2 +- server/api/mailQueueReport/mailQueueReport.rpc.js | 2 +- server/api/mailServerIn/index.js | 2 +- server/api/mailServerIn/mailServerIn.attributes.js | 2 +- server/api/mailServerIn/mailServerIn.model.js | 2 +- server/api/mailServerIn/mailServerIn.rpc.js | 2 +- server/api/mailServerOut/index.js | 2 +- .../api/mailServerOut/mailServerOut.attributes.js | 2 +- .../api/mailServerOut/mailServerOut.controller.js | 2 +- server/api/mailServerOut/mailServerOut.model.js | 2 +- server/api/mailServerOut/mailServerOut.rpc.js | 2 +- server/api/mailSubstatus/index.js | 1 + .../api/mailSubstatus/mailSubstatus.attributes.js | 1 + .../api/mailSubstatus/mailSubstatus.controller.js | 1 + server/api/mailSubstatus/mailSubstatus.model.js | 1 + server/api/mailSubstatus/mailSubstatus.rpc.js | 1 + server/api/memberReport/index.js | 2 +- server/api/memberReport/memberReport.attributes.js | 2 +- server/api/memberReport/memberReport.controller.js | 2 +- server/api/memberReport/memberReport.model.js | 2 +- server/api/memberReport/memberReport.rpc.js | 2 +- server/api/migration/index.js | 2 +- server/api/migration/migration.attributes.js | 2 +- server/api/migration/migration.controller.js | 2 +- server/api/migration/migration.model.js | 2 +- server/api/migration/migration.rpc.js | 2 +- server/api/network/index.js | 2 +- server/api/network/network.attributes.js | 2 +- server/api/network/network.controller.js | 2 +- server/api/network/network.model.js | 2 +- server/api/network/network.rpc.js | 2 +- server/api/openchannelAccount/index.js | 2 +- .../openchannelAccount.attributes.js | 2 +- .../openchannelAccount.controller.js | 2 +- .../openchannelAccount/openchannelAccount.model.js | 2 +- .../openchannelAccount/openchannelAccount.rpc.js | 2 +- server/api/openchannelApplication/index.js | 2 +- .../openchannelApplication.attributes.js | 2 +- .../openchannelApplication.controller.js | 2 +- .../openchannelApplication.model.js | 2 +- .../openchannelApplication.rpc.js | 2 +- server/api/openchannelDisposition/index.js | 2 +- .../openchannelDisposition.attributes.js | 2 +- .../openchannelDisposition.controller.js | 2 +- .../openchannelDisposition.model.js | 2 +- .../openchannelDisposition.rpc.js | 2 +- server/api/openchannelInteraction/index.js | 2 +- .../openchannelInteraction.attributes.js | 2 +- .../openchannelInteraction.controller.js | 2 +- .../openchannelInteraction.events.js | 2 +- .../openchannelInteraction.model.js | 2 +- .../openchannelInteraction.rpc.js | 2 +- .../openchannelInteraction.socket.js | 2 +- server/api/openchannelMessage/index.js | 2 +- .../openchannelMessage.attributes.js | 2 +- .../openchannelMessage.controller.js | 2 +- .../openchannelMessage.events.js | 2 +- .../openchannelMessage/openchannelMessage.model.js | 2 +- .../openchannelMessage/openchannelMessage.rpc.js | 2 +- .../openchannelMessage.socket.js | 2 +- server/api/openchannelQueue/index.js | 2 +- .../openchannelQueue.attributes.js | 2 +- .../openchannelQueue.controller.js | 2 +- .../openchannelQueue/openchannelQueue.events.js | 2 +- .../api/openchannelQueue/openchannelQueue.model.js | 2 +- .../api/openchannelQueue/openchannelQueue.rpc.js | 2 +- .../openchannelQueue/openchannelQueue.socket.js | 2 +- server/api/openchannelQueueReport/index.js | 2 +- .../openchannelQueueReport.attributes.js | 2 +- .../openchannelQueueReport.controller.js | 2 +- .../openchannelQueueReport.model.js | 2 +- .../openchannelQueueReport.rpc.js | 2 +- server/api/pause/index.js | 2 +- server/api/pause/pause.attributes.js | 2 +- server/api/pause/pause.controller.js | 2 +- server/api/pause/pause.model.js | 2 +- server/api/pause/pause.rpc.js | 2 +- server/api/pm2/index.js | 2 +- server/api/pm2/pm2.controller.js | 2 +- server/api/reportAgentPreview/index.js | 2 +- .../reportAgentPreview.attributes.js | 2 +- .../reportAgentPreview/reportAgentPreview.model.js | 2 +- .../reportAgentPreview/reportAgentPreview.rpc.js | 2 +- server/api/rpc/index.js | 2 +- server/api/rpc/rpc.controller.js | 2 +- server/api/schedule/index.js | 2 +- server/api/schedule/schedule.attributes.js | 2 +- server/api/schedule/schedule.controller.js | 2 +- server/api/schedule/schedule.model.js | 2 +- server/api/schedule/schedule.rpc.js | 2 +- server/api/setting/index.js | 2 +- server/api/setting/setting.attributes.js | 2 +- server/api/setting/setting.controller.js | 2 +- server/api/setting/setting.model.js | 2 +- server/api/setting/setting.rpc.js | 2 +- server/api/smsAccount/index.js | 2 +- server/api/smsAccount/smsAccount.attributes.js | 2 +- server/api/smsAccount/smsAccount.controller.js | 2 +- server/api/smsAccount/smsAccount.model.js | 2 +- server/api/smsAccount/smsAccount.rpc.js | 2 +- server/api/smsApplication/index.js | 2 +- .../smsApplication/smsApplication.attributes.js | 2 +- .../smsApplication/smsApplication.controller.js | 2 +- server/api/smsApplication/smsApplication.model.js | 2 +- server/api/smsApplication/smsApplication.rpc.js | 2 +- server/api/smsDisposition/index.js | 2 +- .../smsDisposition/smsDisposition.attributes.js | 2 +- .../smsDisposition/smsDisposition.controller.js | 2 +- server/api/smsDisposition/smsDisposition.model.js | 2 +- server/api/smsDisposition/smsDisposition.rpc.js | 2 +- server/api/smsInteraction/index.js | 2 +- .../smsInteraction/smsInteraction.attributes.js | 2 +- .../smsInteraction/smsInteraction.controller.js | 2 +- server/api/smsInteraction/smsInteraction.events.js | 2 +- server/api/smsInteraction/smsInteraction.model.js | 2 +- server/api/smsInteraction/smsInteraction.rpc.js | 2 +- server/api/smsInteraction/smsInteraction.socket.js | 2 +- server/api/smsMessage/index.js | 2 +- server/api/smsMessage/smsMessage.attributes.js | 2 +- server/api/smsMessage/smsMessage.controller.js | 2 +- server/api/smsMessage/smsMessage.events.js | 2 +- server/api/smsMessage/smsMessage.model.js | 2 +- server/api/smsMessage/smsMessage.rpc.js | 2 +- server/api/smsMessage/smsMessage.socket.js | 2 +- server/api/smsQueue/index.js | 2 +- server/api/smsQueue/smsQueue.attributes.js | 2 +- server/api/smsQueue/smsQueue.controller.js | 2 +- server/api/smsQueue/smsQueue.events.js | 2 +- server/api/smsQueue/smsQueue.model.js | 2 +- server/api/smsQueue/smsQueue.rpc.js | 2 +- server/api/smsQueue/smsQueue.socket.js | 2 +- server/api/smsQueueReport/index.js | 2 +- .../smsQueueReport/smsQueueReport.attributes.js | 2 +- .../smsQueueReport/smsQueueReport.controller.js | 2 +- server/api/smsQueueReport/smsQueueReport.model.js | 2 +- server/api/smsQueueReport/smsQueueReport.rpc.js | 2 +- server/api/sound/index.js | 2 +- server/api/sound/sound.attributes.js | 2 +- server/api/sound/sound.controller.js | 2 +- server/api/sound/sound.model.js | 2 +- server/api/sound/sound.rpc.js | 2 +- server/api/squareOdbc/index.js | 2 +- server/api/squareOdbc/squareOdbc.attributes.js | 2 +- server/api/squareOdbc/squareOdbc.controller.js | 2 +- server/api/squareOdbc/squareOdbc.model.js | 2 +- server/api/squareOdbc/squareOdbc.rpc.js | 2 +- server/api/squareProject/index.js | 2 +- .../api/squareProject/squareProject.attributes.js | 2 +- .../api/squareProject/squareProject.controller.js | 2 +- server/api/squareProject/squareProject.model.js | 2 +- server/api/squareProject/squareProject.rpc.js | 2 +- server/api/squareRecording/index.js | 2 +- .../squareRecording/squareRecording.attributes.js | 2 +- .../squareRecording/squareRecording.controller.js | 2 +- .../api/squareRecording/squareRecording.model.js | 2 +- server/api/squareRecording/squareRecording.rpc.js | 2 +- server/api/squareReport/index.js | 2 +- server/api/squareReport/squareReport.attributes.js | 2 +- server/api/squareReport/squareReport.controller.js | 2 +- server/api/squareReport/squareReport.model.js | 2 +- server/api/squareReport/squareReport.rpc.js | 2 +- server/api/squareReportDetail/index.js | 2 +- .../squareReportDetail.attributes.js | 2 +- .../squareReportDetail.controller.js | 2 +- .../squareReportDetail/squareReportDetail.model.js | 2 +- .../squareReportDetail/squareReportDetail.rpc.js | 2 +- server/api/system/index.js | 2 +- server/api/system/system.controller.js | 2 +- server/api/tag/index.js | 2 +- server/api/tag/tag.attributes.js | 2 +- server/api/tag/tag.controller.js | 2 +- server/api/tag/tag.model.js | 2 +- server/api/tag/tag.rpc.js | 2 +- server/api/team/index.js | 2 +- server/api/team/team.attributes.js | 2 +- server/api/team/team.controller.js | 2 +- server/api/team/team.events.js | 2 +- server/api/team/team.model.js | 2 +- server/api/team/team.rpc.js | 2 +- server/api/team/team.socket.js | 2 +- server/api/template/index.js | 2 +- server/api/template/template.attributes.js | 2 +- server/api/template/template.controller.js | 2 +- server/api/template/template.model.js | 2 +- server/api/template/template.rpc.js | 2 +- server/api/trigger/index.js | 2 +- server/api/trigger/trigger.attributes.js | 2 +- server/api/trigger/trigger.controller.js | 2 +- server/api/trigger/trigger.model.js | 2 +- server/api/trigger/trigger.rpc.js | 2 +- server/api/trunk/index.js | 2 +- server/api/trunk/trunk.attributes.js | 2 +- server/api/trunk/trunk.controller.js | 2 +- server/api/trunk/trunk.model.js | 2 +- server/api/trunk/trunk.rpc.js | 2 +- server/api/user/index.js | 2 +- server/api/user/user.attributes.js | 2 +- server/api/user/user.controller.js | 2 +- server/api/user/user.events.js | 2 +- server/api/user/user.model.js | 2 +- server/api/user/user.rpc.js | 2 +- server/api/user/user.socket.js | 2 +- server/api/userChatQueue/index.js | 2 +- .../api/userChatQueue/userChatQueue.attributes.js | 2 +- server/api/userChatQueue/userChatQueue.model.js | 2 +- server/api/userChatQueue/userChatQueue.rpc.js | 2 +- server/api/userFaxQueue/index.js | 2 +- server/api/userFaxQueue/userFaxQueue.attributes.js | 2 +- server/api/userFaxQueue/userFaxQueue.model.js | 2 +- server/api/userFaxQueue/userFaxQueue.rpc.js | 2 +- server/api/userMailQueue/index.js | 2 +- .../api/userMailQueue/userMailQueue.attributes.js | 2 +- server/api/userMailQueue/userMailQueue.model.js | 2 +- server/api/userMailQueue/userMailQueue.rpc.js | 2 +- server/api/userOpenchannelQueue/index.js | 2 +- .../userOpenchannelQueue.attributes.js | 2 +- .../userOpenchannelQueue.model.js | 2 +- .../userOpenchannelQueue.rpc.js | 2 +- server/api/userSmsQueue/index.js | 2 +- server/api/userSmsQueue/userSmsQueue.attributes.js | 2 +- server/api/userSmsQueue/userSmsQueue.model.js | 2 +- server/api/userSmsQueue/userSmsQueue.rpc.js | 2 +- server/api/userVoiceQueue/index.js | 2 +- .../userVoiceQueue/userVoiceQueue.attributes.js | 2 +- server/api/userVoiceQueue/userVoiceQueue.model.js | 2 +- server/api/userVoiceQueue/userVoiceQueue.rpc.js | 2 +- server/api/userVoiceQueueRt/index.js | 2 +- .../userVoiceQueueRt.attributes.js | 2 +- .../userVoiceQueueRt/userVoiceQueueRt.events.js | 2 +- .../api/userVoiceQueueRt/userVoiceQueueRt.model.js | 2 +- .../api/userVoiceQueueRt/userVoiceQueueRt.rpc.js | 2 +- .../userVoiceQueueRt/userVoiceQueueRt.socket.js | 2 +- server/api/variable/index.js | 2 +- server/api/variable/variable.attributes.js | 2 +- server/api/variable/variable.controller.js | 2 +- server/api/variable/variable.model.js | 2 +- server/api/variable/variable.rpc.js | 2 +- server/api/version/index.js | 2 +- server/api/version/version.controller.js | 2 +- server/api/voiceAgentReport/index.js | 2 +- .../voiceAgentReport.attributes.js | 2 +- .../voiceAgentReport.controller.js | 2 +- .../api/voiceAgentReport/voiceAgentReport.model.js | 2 +- .../api/voiceAgentReport/voiceAgentReport.rpc.js | 2 +- server/api/voiceCallReport/index.js | 2 +- .../voiceCallReport/voiceCallReport.attributes.js | 2 +- .../voiceCallReport/voiceCallReport.controller.js | 2 +- .../api/voiceCallReport/voiceCallReport.model.js | 2 +- server/api/voiceCallReport/voiceCallReport.rpc.js | 2 +- server/api/voiceChanSpy/index.js | 2 +- server/api/voiceChanSpy/voiceChanSpy.attributes.js | 2 +- server/api/voiceChanSpy/voiceChanSpy.controller.js | 2 +- server/api/voiceChanSpy/voiceChanSpy.model.js | 2 +- server/api/voiceChanSpy/voiceChanSpy.rpc.js | 2 +- server/api/voiceContext/index.js | 2 +- server/api/voiceContext/voiceContext.attributes.js | 2 +- server/api/voiceContext/voiceContext.controller.js | 2 +- server/api/voiceContext/voiceContext.model.js | 2 +- server/api/voiceContext/voiceContext.rpc.js | 2 +- server/api/voiceDialReport/index.js | 2 +- .../voiceDialReport/voiceDialReport.attributes.js | 2 +- .../voiceDialReport/voiceDialReport.controller.js | 2 +- .../api/voiceDialReport/voiceDialReport.model.js | 2 +- server/api/voiceDialReport/voiceDialReport.rpc.js | 2 +- server/api/voiceDisposition/index.js | 2 +- .../voiceDisposition.attributes.js | 2 +- .../voiceDisposition.controller.js | 2 +- .../api/voiceDisposition/voiceDisposition.model.js | 2 +- .../api/voiceDisposition/voiceDisposition.rpc.js | 2 +- server/api/voiceExtension/index.js | 2 +- .../voiceExtension/voiceExtension.attributes.js | 2 +- .../voiceExtension/voiceExtension.controller.js | 2 +- server/api/voiceExtension/voiceExtension.events.js | 2 +- server/api/voiceExtension/voiceExtension.model.js | 2 +- server/api/voiceExtension/voiceExtension.rpc.js | 2 +- server/api/voiceExtension/voiceExtension.socket.js | 2 +- server/api/voiceMail/index.js | 2 +- server/api/voiceMail/voiceMail.attributes.js | 2 +- server/api/voiceMail/voiceMail.controller.js | 2 +- server/api/voiceMail/voiceMail.model.js | 2 +- server/api/voiceMail/voiceMail.rpc.js | 2 +- server/api/voiceMailMessage/index.js | 2 +- .../voiceMailMessage.attributes.js | 2 +- .../voiceMailMessage.controller.js | 2 +- .../api/voiceMailMessage/voiceMailMessage.model.js | 2 +- .../api/voiceMailMessage/voiceMailMessage.rpc.js | 2 +- server/api/voiceMusicOnHold/index.js | 2 +- .../voiceMusicOnHold.attributes.js | 2 +- .../voiceMusicOnHold.controller.js | 2 +- .../api/voiceMusicOnHold/voiceMusicOnHold.model.js | 2 +- .../api/voiceMusicOnHold/voiceMusicOnHold.rpc.js | 2 +- server/api/voiceQueue/index.js | 2 +- server/api/voiceQueue/voiceQueue.attributes.js | 2 +- server/api/voiceQueue/voiceQueue.controller.js | 2 +- server/api/voiceQueue/voiceQueue.events.js | 2 +- server/api/voiceQueue/voiceQueue.model.js | 2 +- server/api/voiceQueue/voiceQueue.rpc.js | 2 +- server/api/voiceQueue/voiceQueue.socket.js | 2 +- server/api/voiceQueueReport/index.js | 2 +- .../voiceQueueReport.attributes.js | 2 +- .../voiceQueueReport.controller.js | 2 +- .../api/voiceQueueReport/voiceQueueReport.model.js | 2 +- .../api/voiceQueueReport/voiceQueueReport.rpc.js | 2 +- server/api/voiceQueuesLog/index.js | 2 +- .../voiceQueuesLog/voiceQueuesLog.attributes.js | 2 +- .../voiceQueuesLog/voiceQueuesLog.controller.js | 2 +- server/api/voiceQueuesLog/voiceQueuesLog.model.js | 2 +- server/api/voiceQueuesLog/voiceQueuesLog.rpc.js | 2 +- server/api/voiceRecording/index.js | 2 +- .../voiceRecording/voiceRecording.attributes.js | 2 +- .../voiceRecording/voiceRecording.controller.js | 2 +- server/api/voiceRecording/voiceRecording.model.js | 2 +- server/api/voiceRecording/voiceRecording.rpc.js | 2 +- server/api/voiceTransferReport/index.js | 2 +- .../voiceTransferReport.attributes.js | 2 +- .../voiceTransferReport.controller.js | 2 +- .../voiceTransferReport.model.js | 2 +- .../voiceTransferReport/voiceTransferReport.rpc.js | 2 +- server/app.js | 2 +- server/components/auth/service.js | 2 +- server/components/dashboards/run.js | 2 +- server/components/encryptor/index.js | 2 +- server/components/export/csv.js | 2 +- server/components/export/pdf.js | 2 +- server/components/export/xls.js | 2 +- server/components/export/xlsx.js | 2 +- server/components/extensions/rewrite.js | 2 +- server/components/import/cm/csv.js | 2 +- server/components/integrations/configuration.js | 2 +- server/components/license/service.js | 2 +- server/components/parsers/qs.js | 2 +- server/config/express.js | 2 +- server/config/license/hardware.js | 2 +- server/config/license/index.js | 2 +- server/config/license/util.js | 2 +- server/config/local.env.js | 2 +- server/config/logger.js | 2 +- server/config/pm2/config.js | 2 +- server/config/pm2/index.js | 2 +- server/config/schedule/index.js | 2 +- server/config/seed.js | 2 +- server/config/seedContact.js | 2 +- server/config/seedDB/index.js | 1 + server/config/seedDB/mailSubstatuses.js | 26 +++ server/config/seedUsers.js | 2 +- server/config/socketio.js | 2 +- server/config/triggers/index.js | 2 +- server/config/utils.js | 2 +- server/errors/index.js | 2 +- server/migrations/2.0.55.js | 166 ++++++++++++++++++++ server/mysqldb/index.js | 2 +- server/routes.js | 2 +- server/rpc/index.js | 2 +- server/services/agi/channel.js | 2 +- server/services/agi/error.js | 2 +- server/services/agi/graph/index.js | 2 +- server/services/agi/index.js | 2 +- server/services/agi/mailRpc/index.js | 2 +- server/services/agi/reply.js | 2 +- server/services/agi/rpc/index.js | 2 +- server/services/agi/scripts/aws/index.js | 2 +- server/services/agi/scripts/aws/polly/index.js | 2 +- server/services/agi/scripts/aws/polly/lib/api.js | 2 +- server/services/agi/scripts/google/asr/index.js | 2 +- server/services/agi/scripts/google/asr/lib/api.js | 2 +- server/services/agi/scripts/google/index.js | 2 +- server/services/agi/scripts/index.js | 2 +- server/services/agi/scripts/tilde/asr/index.js | 2 +- server/services/agi/scripts/tilde/asr/lib/api.js | 2 +- server/services/agi/scripts/tilde/index.js | 2 +- server/services/agi/server.js | 2 +- server/services/agi/vertices.js | 2 +- server/services/ami/acw/index.js | 2 +- server/services/ami/ami.js | 2 +- server/services/ami/client.js | 2 +- server/services/ami/dialer/action.js | 2 +- server/services/ami/dialer/agentComplete.js | 2 +- server/services/ami/dialer/final.js | 2 +- server/services/ami/dialer/hangup.js | 2 +- server/services/ami/dialer/history.js | 2 +- server/services/ami/dialer/index.js | 2 +- server/services/ami/dialer/queueCallerAbandon.js | 2 +- server/services/ami/fax/action.js | 2 +- server/services/ami/fax/channel.js | 2 +- server/services/ami/fax/index.js | 2 +- server/services/ami/fax/rpcDb.js | 2 +- server/services/ami/fax/util/gs.js | 2 +- server/services/ami/fax/util/util.js | 2 +- server/services/ami/index.js | 2 +- server/services/ami/model/agent.js | 2 +- server/services/ami/model/campaign.js | 2 +- server/services/ami/model/channel.js | 2 +- server/services/ami/model/deskAccount.js | 2 +- server/services/ami/model/faxAccount.js | 2 +- server/services/ami/model/freshdeskAccount.js | 2 +- server/services/ami/model/queueReport.js | 2 +- server/services/ami/model/salesforceAccount.js | 2 +- server/services/ami/model/sugarcrmAccount.js | 2 +- server/services/ami/model/telephone.js | 2 +- server/services/ami/model/template.js | 2 +- server/services/ami/model/trigger.js | 2 +- server/services/ami/model/trunk.js | 2 +- server/services/ami/model/voiceExtension.js | 2 +- server/services/ami/model/voiceQueue.js | 2 +- server/services/ami/model/voiceTrigger.js | 2 +- server/services/ami/model/zendeskAccount.js | 2 +- server/services/ami/model/zohoAccount.js | 2 +- server/services/ami/preview/action.js | 2 +- server/services/ami/preview/index.js | 2 +- server/services/ami/preview/rpcDb.js | 2 +- server/services/ami/preview/util/util.js | 2 +- server/services/ami/properties.js | 2 +- server/services/ami/realtime/index.js | 2 +- server/services/ami/report/index.js | 2 +- server/services/ami/report/userReport.js | 2 +- server/services/ami/report/voiceAgentReport.js | 2 +- server/services/ami/report/voiceCallReport.js | 2 +- server/services/ami/report/voiceDialReport.js | 2 +- server/services/ami/report/voiceQueueReport.js | 2 +- server/services/ami/rpc/agentReportPreview.js | 2 +- server/services/ami/rpc/attachment.js | 2 +- server/services/ami/rpc/campaign.js | 2 +- server/services/ami/rpc/cmContact.js | 2 +- server/services/ami/rpc/cmHopper.js | 2 +- server/services/ami/rpc/cmHopperBlack.js | 2 +- server/services/ami/rpc/cmHopperFinal.js | 2 +- server/services/ami/rpc/cmHopperHistory.js | 2 +- server/services/ami/rpc/faxAccount.js | 2 +- server/services/ami/rpc/faxMessage.js | 2 +- server/services/ami/rpc/integrations/desk.js | 2 +- server/services/ami/rpc/integrations/freshdesk.js | 2 +- server/services/ami/rpc/integrations/salesforce.js | 2 +- server/services/ami/rpc/integrations/sugarcrm.js | 2 +- server/services/ami/rpc/integrations/zendesk.js | 2 +- server/services/ami/rpc/integrations/zoho.js | 2 +- server/services/ami/rpc/memberReport.js | 2 +- server/services/ami/rpc/template.js | 2 +- server/services/ami/rpc/trigger.js | 2 +- server/services/ami/rpc/trunk.js | 2 +- server/services/ami/rpc/user.js | 2 +- server/services/ami/rpc/voiceAgentReport.js | 2 +- server/services/ami/rpc/voiceCallReport.js | 2 +- server/services/ami/rpc/voiceDialReport.js | 2 +- server/services/ami/rpc/voiceExtension.js | 2 +- server/services/ami/rpc/voiceQueue.js | 2 +- server/services/ami/rpc/voiceQueueReport.js | 2 +- server/services/ami/rpc/voiceQueueRt.js | 2 +- server/services/ami/rpc/voiceRecording.js | 2 +- server/services/ami/rpc/voiceTransferReport.js | 2 +- server/services/ami/server/index.js | 2 +- server/services/ami/trigger/index.js | 2 +- server/services/ami/trigger/integration/desk.js | 2 +- .../services/ami/trigger/integration/freshdesk.js | 2 +- server/services/ami/trigger/integration/index.js | 2 +- .../services/ami/trigger/integration/salesforce.js | 2 +- .../services/ami/trigger/integration/sugarcrm.js | 2 +- server/services/ami/trigger/integration/util.js | 2 +- server/services/ami/trigger/integration/zendesk.js | 2 +- server/services/ami/trigger/integration/zoho.js | 2 +- server/services/ami/trigger/urlforward/index.js | 2 +- server/services/email/client.js | 2 +- server/services/email/index.js | 2 +- server/services/email/lib/email.js | 2 +- server/services/email/lib/imap.js | 2 +- server/services/email/lib/smtp.js | 2 +- server/services/email/lib/utils.js | 2 +- server/services/email/model/mailAccount.js | 2 +- server/services/email/realtime/index.js | 2 +- server/services/email/rpc/mailAccount.js | 2 +- server/services/email/server/index.js | 2 +- server/services/express/index.js | 2 +- server/services/routing/client.js | 2 +- server/services/routing/index.js | 2 +- server/services/routing/lib/rule-engine.js | 2 +- server/services/routing/mailRpc/index.js | 2 +- server/services/routing/model/agent.js | 2 +- server/services/routing/model/chatQueue.js | 2 +- server/services/routing/model/faxQueue.js | 2 +- server/services/routing/model/interval.js | 2 +- server/services/routing/model/mailQueue.js | 2 +- server/services/routing/model/openchannelQueue.js | 2 +- server/services/routing/model/smsQueue.js | 2 +- server/services/routing/realtime/index.js | 2 +- server/services/routing/rpc/chatInteraction.js | 2 +- server/services/routing/rpc/chatMessage.js | 2 +- server/services/routing/rpc/chatQueue.js | 2 +- server/services/routing/rpc/chatQueueReport.js | 2 +- server/services/routing/rpc/faxInteraction.js | 2 +- server/services/routing/rpc/faxMessage.js | 2 +- server/services/routing/rpc/faxQueue.js | 2 +- server/services/routing/rpc/faxQueueReport.js | 2 +- server/services/routing/rpc/interval.js | 2 +- server/services/routing/rpc/mailInteraction.js | 2 +- server/services/routing/rpc/mailMessage.js | 2 +- server/services/routing/rpc/mailQueue.js | 2 +- server/services/routing/rpc/mailQueueReport.js | 2 +- .../services/routing/rpc/openchannelInteraction.js | 2 +- server/services/routing/rpc/openchannelMessage.js | 2 +- server/services/routing/rpc/openchannelQueue.js | 2 +- .../services/routing/rpc/openchannelQueueReport.js | 2 +- server/services/routing/rpc/smsInteraction.js | 2 +- server/services/routing/rpc/smsMessage.js | 2 +- server/services/routing/rpc/smsQueue.js | 2 +- server/services/routing/rpc/smsQueueReport.js | 2 +- server/services/routing/rpc/user.js | 2 +- .../services/routing/server/applications/agent.js | 2 +- .../routing/server/applications/autoreply.js | 2 +- .../services/routing/server/applications/close.js | 2 +- .../services/routing/server/applications/gotoif.js | 2 +- .../services/routing/server/applications/gotop.js | 2 +- .../routing/server/applications/message.js | 2 +- .../services/routing/server/applications/noop.js | 2 +- .../services/routing/server/applications/queue.js | 2 +- .../routing/server/applications/strategy/agent.js | 2 +- .../server/applications/strategy/beepall.js | 2 +- .../routing/server/applications/strategy/index.js | 2 +- .../server/applications/strategy/rrmemory.js | 2 +- .../routing/server/applications/strategy/util.js | 2 +- .../services/routing/server/applications/utils.js | 2 +- server/services/routing/server/index.js | 2 +- server/services/routing/server/interval.js | 2 +- 1021 files changed, 1580 insertions(+), 1004 deletions(-) create mode 100644 public/app/footer/i18n/da.json create mode 100644 public/app/footer/i18n/de.json create mode 100644 public/app/footer/i18n/en.json create mode 100644 public/app/footer/i18n/es.json create mode 100644 public/app/footer/i18n/fa.json create mode 100644 public/app/footer/i18n/fi.json create mode 100644 public/app/footer/i18n/fr.json create mode 100644 public/app/footer/i18n/hi.json create mode 100644 public/app/footer/i18n/it.json create mode 100644 public/app/footer/i18n/ja.json create mode 100644 public/app/footer/i18n/ko.json create mode 100644 public/app/footer/i18n/lv.json create mode 100644 public/app/footer/i18n/nl.json create mode 100644 public/app/footer/i18n/no.json create mode 100644 public/app/footer/i18n/pl.json create mode 100644 public/app/footer/i18n/pt-PT.json create mode 100644 public/app/footer/i18n/ru.json create mode 100644 public/app/footer/i18n/sv.json create mode 100644 public/app/footer/i18n/tr.json create mode 100644 public/app/footer/i18n/zh-CN.json create mode 100644 public/app/footer/i18n/zh-TW.json create mode 100644 public/scripts/app.0eff18c6.js delete mode 100644 public/scripts/app.a88b0b5d.js create mode 100644 public/scripts/vendor.5e480a5a.js delete mode 100644 public/scripts/vendor.78e781ac.js create mode 100644 public/styles/app.1f85e662.css delete mode 100644 public/styles/app.7ccf5ab2.css create mode 100644 server/api/mailSubstatus/index.js create mode 100644 server/api/mailSubstatus/mailSubstatus.attributes.js create mode 100644 server/api/mailSubstatus/mailSubstatus.controller.js create mode 100644 server/api/mailSubstatus/mailSubstatus.model.js create mode 100644 server/api/mailSubstatus/mailSubstatus.rpc.js create mode 100644 server/config/seedDB/mailSubstatuses.js create mode 100644 server/migrations/2.0.55.js diff --git a/apidoc/api_data.js b/apidoc/api_data.js index bb30a2f..6658f42 100644 --- a/apidoc/api_data.js +++ b/apidoc/api_data.js @@ -1 +1 @@ -define({ "api": [ { "type": "delete", "url": "/api/actions/{id}", "title": "Deletes a Action", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/actions/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteActions", "group": "Actions", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/action/index.js", "groupTitle": "Actions" }, { "type": "put", "url": "/api/actions/{id}", "title": "Update an existing Action", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/actions/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateActions", "group": "Actions", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/action/index.js", "groupTitle": "Actions" }, { "type": "post", "url": "/api/analytics/custom_reports", "title": "Creates a new Analytic Custom Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/analytics/custom_reports -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateAnalytic_Custom_Reports", "group": "Analytic_Custom_Reports", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "parent", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "table", "description": "" }, { "group": "Body", "type": "Text", "optional": true, "field": "conditions", "description": "" }, { "group": "Body", "type": "Text", "optional": true, "field": "joins", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/analyticCustomReport/index.js", "groupTitle": "Analytic_Custom_Reports" }, { "type": "delete", "url": "/api/analytics/custom_reports/{id}", "title": "Deletes a Analytic Custom Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/analytics/custom_reports/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteAnalytic_Custom_Reports", "group": "Analytic_Custom_Reports", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/analyticCustomReport/index.js", "groupTitle": "Analytic_Custom_Reports" }, { "type": "get", "url": "/api/analytics/custom_reports", "title": "Gets a list of Analytic Custom Reports", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/analytics/custom_reports -v -u {name}:{password}", "type": "json" } ], "name": "GetAnalytic_Custom_Reports", "group": "Analytic_Custom_Reports", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/analytics/custom_reports?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/analytics/custom_reports?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/analytics/custom_reports?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/analytics/custom_reports?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/analytics/custom_reports?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/analyticCustomReport/index.js", "groupTitle": "Analytic_Custom_Reports" }, { "type": "get", "url": "/api/analytics/custom_reports/{id}", "title": "Gets a single Analytic Custom Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/analytics/custom_reports/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowAnalytic_Custom_Reports", "group": "Analytic_Custom_Reports", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/analyticCustomReport/index.js", "groupTitle": "Analytic_Custom_Reports" }, { "type": "get", "url": "/api/analytics/custom_reports/{id}/preview", "title": "Report Preview", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/analytics/custom_reports/{id}/preview -v -u {name}:{password} -X GET", "type": "json" } ], "name": "preview", "group": "Analytic_Custom_Reports", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/analyticCustomReport/index.js", "groupTitle": "Analytic_Custom_Reports" }, { "type": "get", "url": "/api/analytics/custom_reports/{id}/query", "title": "Report Query SQL", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/analytics/custom_reports/{id}/query -v -u {name}:{password} -X GET", "type": "json" } ], "name": "query", "group": "Analytic_Custom_Reports", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/analyticCustomReport/index.js", "groupTitle": "Analytic_Custom_Reports" }, { "type": "get", "url": "/api/analytics/custom_reports/{id}/run", "title": "Report Run", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/analytics/custom_reports/{id}/run -v -u {name}:{password} -X GET", "type": "json" } ], "name": "run", "group": "Analytic_Custom_Reports", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/analyticCustomReport/index.js", "groupTitle": "Analytic_Custom_Reports" }, { "type": "put", "url": "/api/analytics/custom_reports/{id}", "title": "Update an existing Analytic Custom Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/analytics/custom_reports/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateAnalytic_Custom_Reports", "group": "Analytic_Custom_Reports", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/analyticCustomReport/index.js", "groupTitle": "Analytic_Custom_Reports" }, { "type": "post", "url": "/api/analytics/default_reports", "title": "Creates a new Analytic Default Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/analytics/default_reports -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateAnalytic_Default_Reports", "group": "Analytic_Default_Reports", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "parent", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "table", "description": "" }, { "group": "Body", "type": "Text", "optional": true, "field": "conditions", "description": "" }, { "group": "Body", "type": "Text", "optional": true, "field": "joins", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/analyticDefaultReport/index.js", "groupTitle": "Analytic_Default_Reports" }, { "type": "delete", "url": "/api/analytics/default_reports/{id}", "title": "Deletes a Analytic Default Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/analytics/default_reports/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteAnalytic_Default_Reports", "group": "Analytic_Default_Reports", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/analyticDefaultReport/index.js", "groupTitle": "Analytic_Default_Reports" }, { "type": "get", "url": "/api/analytics/default_reports", "title": "Gets a list of Analytic Default Reports", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/analytics/default_reports -v -u {name}:{password}", "type": "json" } ], "name": "GetAnalytic_Default_Reports", "group": "Analytic_Default_Reports", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/analytics/default_reports?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/analytics/default_reports?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/analytics/default_reports?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/analytics/default_reports?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/analytics/default_reports?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/analyticDefaultReport/index.js", "groupTitle": "Analytic_Default_Reports" }, { "type": "get", "url": "/api/analytics/default_reports/{id}", "title": "Gets a single Analytic Default Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/analytics/default_reports/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowAnalytic_Default_Reports", "group": "Analytic_Default_Reports", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/analyticDefaultReport/index.js", "groupTitle": "Analytic_Default_Reports" }, { "type": "get", "url": "/api/analytics/default_reports/{id}/preview", "title": "Report Preview", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/analytics/default_reports/{id}/preview -v -u {name}:{password} -X GET", "type": "json" } ], "name": "preview", "group": "Analytic_Default_Reports", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/analyticDefaultReport/index.js", "groupTitle": "Analytic_Default_Reports" }, { "type": "get", "url": "/api/analytics/default_reports/{id}/query", "title": "Report Query SQL", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/analytics/default_reports/{id}/query -v -u {name}:{password} -X GET", "type": "json" } ], "name": "query", "group": "Analytic_Default_Reports", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/analyticDefaultReport/index.js", "groupTitle": "Analytic_Default_Reports" }, { "type": "get", "url": "/api/analytics/default_reports/{id}/run", "title": "Report Run", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/analytics/default_reports/{id}/run -v -u {name}:{password} -X GET", "type": "json" } ], "name": "run", "group": "Analytic_Default_Reports", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/analyticDefaultReport/index.js", "groupTitle": "Analytic_Default_Reports" }, { "type": "put", "url": "/api/analytics/default_reports/{id}", "title": "Update an existing Analytic Default Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/analytics/default_reports/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateAnalytic_Default_Reports", "group": "Analytic_Default_Reports", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/analyticDefaultReport/index.js", "groupTitle": "Analytic_Default_Reports" }, { "type": "post", "url": "/api/analytics/extracted_reports", "title": "Creates a new Analytic Extracted Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/analytics/extracted_reports -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateAnalytic_Extacted_Reports", "group": "Analytic_Extracted_Reports", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "name", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"csv\"", "\"pdf\"", "\"xlsx\"" ], "optional": false, "field": "output", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "savename", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "startDate", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "endDate", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "status", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"manual\"", "\"scheduled\"" ], "optional": false, "field": "type", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/analyticExtractedReport/index.js", "groupTitle": "Analytic_Extracted_Reports" }, { "type": "delete", "url": "/api/analytics/extracted_reports/{id}", "title": "Deletes a Analytic Extracted Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/analytics/extracted_reports/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteAnalytic_Extacted_Reports", "group": "Analytic_Extracted_Reports", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/analyticExtractedReport/index.js", "groupTitle": "Analytic_Extracted_Reports" }, { "type": "get", "url": "/api/analytics/extracted_reports", "title": "Gets a list of Analytic Extacted Reports", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/analytics/extracted_reports -v -u {name}:{password}", "type": "json" } ], "name": "GetAnalytic_Extacted_Reports", "group": "Analytic_Extracted_Reports", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/analytics/extracted_reports?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/analytics/extracted_reports?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/analytics/extracted_reports?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/analytics/extracted_reports?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/analytics/extracted_reports?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/analyticExtractedReport/index.js", "groupTitle": "Analytic_Extracted_Reports" }, { "type": "get", "url": "/api/analytics/extracted_reports/{id}", "title": "Gets a single Analytic Extracted Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/analytics/extracted_reports/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowAnalytic_Extacted_Reports", "group": "Analytic_Extracted_Reports", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/analyticExtractedReport/index.js", "groupTitle": "Analytic_Extracted_Reports" }, { "type": "get", "url": "/api/analytics/extracted_reports/{id}/download", "title": "Download Extracted Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/analytics/extracted_reports/{id}/download -v -u {name}:{password} -X GET", "type": "json" } ], "name": "download", "group": "Analytic_Extracted_Reports", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/analyticExtractedReport/index.js", "groupTitle": "Analytic_Extracted_Reports" }, { "type": "put", "url": "/api/analytics/extracted_reports/{id}", "title": "Update an existing Analytic Extracted Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/analytics/extracted_reports/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateAnalytic_Extacted_Reports", "group": "Analytic_Extracted_Reports", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/analyticExtractedReport/index.js", "groupTitle": "Analytic_Extracted_Reports" }, { "type": "post", "url": "/api/analytics/field_reports/create_many", "title": "Creates many Analytic Field Reports", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/analytics/field_reports/create_many -d '[{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}]' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "BulkCreateAnalytic_Field_Reports", "group": "Analytic_Field_Reports", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "field", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "alias", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "function", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "format", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "groupBy", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "orderBy", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "custom", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/analyticFieldReport/index.js", "groupTitle": "Analytic_Field_Reports" }, { "type": "delete", "url": "/api/analytics/field_reports/destroy_many?ids={ids}", "title": "Deletes many Analytic Field Reports", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/analytics/field_reports/destroy_many?ids=1&ids=2&ids=3 -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "BulkDeleteAnalytic_Field_Reports", "group": "Analytic_Field_Reports", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/analyticFieldReport/index.js", "groupTitle": "Analytic_Field_Reports" }, { "type": "post", "url": "/api/analytics/field_reports", "title": "Creates a new Analytic Field Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/analytics/field_reports -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateAnalytic_Field_Reports", "group": "Analytic_Field_Reports", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "field", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "alias", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "function", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "format", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "groupBy", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "orderBy", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "custom", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/analyticFieldReport/index.js", "groupTitle": "Analytic_Field_Reports" }, { "type": "delete", "url": "/api/analytics/field_reports/{id}", "title": "Deletes a Analytic Field Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/analytics/field_reports/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteAnalytic_Field_Reports", "group": "Analytic_Field_Reports", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/analyticFieldReport/index.js", "groupTitle": "Analytic_Field_Reports" }, { "type": "get", "url": "/api/analytics/field_reports", "title": "Gets a list of Analytic Field Reports", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/analytics/field_reports -v -u {name}:{password}", "type": "json" } ], "name": "GetAnalytic_Field_Reports", "group": "Analytic_Field_Reports", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/analytics/field_reports?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/analytics/field_reports?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/analytics/field_reports?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/analytics/field_reports?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/analytics/field_reports?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/analyticFieldReport/index.js", "groupTitle": "Analytic_Field_Reports" }, { "type": "get", "url": "/api/analytics/field_reports/{id}", "title": "Gets a single Analytic Field Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/analytics/field_reports/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowAnalytic_Field_Reports", "group": "Analytic_Field_Reports", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/analyticFieldReport/index.js", "groupTitle": "Analytic_Field_Reports" }, { "type": "post", "url": "/api/analytics/field_reports/{id}/create_many", "title": "Rewrite fields set", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/analytics/field_reports/{id}/create_many -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addFields", "group": "Analytic_Field_Reports", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/analyticFieldReport/index.js", "groupTitle": "Analytic_Field_Reports" }, { "type": "put", "url": "/api/analytics/field_reports/{id}", "title": "Update an existing Analytic Field Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/analytics/field_reports/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateAnalytic_Field_Reports", "group": "Analytic_Field_Reports", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/analyticFieldReport/index.js", "groupTitle": "Analytic_Field_Reports" }, { "type": "post", "url": "/api/analytics/metrics", "title": "Creates a new Analytic Metrics", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/analytics/metrics -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateAnalytic_Metric", "group": "Analytic_Metrics", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "table", "description": "" }, { "group": "Body", "type": "Text", "optional": true, "field": "metric", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/analyticMetric/index.js", "groupTitle": "Analytic_Metrics" }, { "type": "delete", "url": "/api/analytics/metrics/{id}", "title": "Deletes a Analytic Metrics", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/analytics/metrics/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteAnalytic_Metric", "group": "Analytic_Metrics", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/analyticMetric/index.js", "groupTitle": "Analytic_Metrics" }, { "type": "get", "url": "/api/analytics/metrics", "title": "Gets a list of Analytic Metric", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/analytics/metrics -v -u {name}:{password}", "type": "json" } ], "name": "GetAnalytic_Metric", "group": "Analytic_Metrics", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/analytics/metrics?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/analytics/metrics?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/analytics/metrics?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/analytics/metrics?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/analytics/metrics?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/analyticMetric/index.js", "groupTitle": "Analytic_Metrics" }, { "type": "get", "url": "/api/analytics/metrics/{id}", "title": "Gets a single Analytic Metrics", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/analytics/metrics/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowAnalytic_Metric", "group": "Analytic_Metrics", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/analyticMetric/index.js", "groupTitle": "Analytic_Metrics" }, { "type": "put", "url": "/api/analytics/metrics/{id}", "title": "Update an existing Analytic Metrics", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/analytics/metrics/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateAnalytic_Metric", "group": "Analytic_Metrics", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/analyticMetric/index.js", "groupTitle": "Analytic_Metrics" }, { "type": "post", "url": "/api/analytics/tree_reports", "title": "Creates a new Analytic Tree Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/analytics/tree_reports -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateAnalytic_Tree_Reports", "group": "Analytic_Tree_Reports", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "Text", "optional": false, "field": "tree", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/analyticTreeReport/index.js", "groupTitle": "Analytic_Tree_Reports" }, { "type": "delete", "url": "/api/analytics/tree_reports/{id}", "title": "Deletes a Analytic Tree Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/analytics/tree_reports/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteAnalytic_Tree_Reports", "group": "Analytic_Tree_Reports", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/analyticTreeReport/index.js", "groupTitle": "Analytic_Tree_Reports" }, { "type": "get", "url": "/api/analytics/tree_reports", "title": "Gets a list of Analytic Tree Reports", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/analytics/tree_reports -v -u {name}:{password}", "type": "json" } ], "name": "GetAnalytic_Tree_Reports", "group": "Analytic_Tree_Reports", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/analytics/tree_reports?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/analytics/tree_reports?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/analytics/tree_reports?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/analytics/tree_reports?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/analytics/tree_reports?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/analyticTreeReport/index.js", "groupTitle": "Analytic_Tree_Reports" }, { "type": "get", "url": "/api/analytics/tree_reports/{id}", "title": "Gets a single Analytic Tree Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/analytics/tree_reports/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowAnalytic_Tree_Reports", "group": "Analytic_Tree_Reports", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/analyticTreeReport/index.js", "groupTitle": "Analytic_Tree_Reports" }, { "type": "put", "url": "/api/analytics/tree_reports/{id}", "title": "Update an existing Analytic Tree Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/analytics/tree_reports/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateAnalytic_Tree_Reports", "group": "Analytic_Tree_Reports", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/analyticTreeReport/index.js", "groupTitle": "Analytic_Tree_Reports" }, { "type": "delete", "url": "/api/attachments/{id}", "title": "Deletes a Attachment", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/attachments/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteAttachments", "group": "Attachments", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/attachment/index.js", "groupTitle": "Attachments" }, { "type": "get", "url": "/api/attachments", "title": "Gets a list of Attachments", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/attachments -v -u {name}:{password}", "type": "json" } ], "name": "GetAttachments", "group": "Attachments", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/attachments?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/attachments?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/attachments?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/attachments?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/attachments?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/attachment/index.js", "groupTitle": "Attachments" }, { "type": "get", "url": "/api/attachments/{id}", "title": "Gets a single Attachment", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/attachments/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowAttachments", "group": "Attachments", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/attachment/index.js", "groupTitle": "Attachments" }, { "type": "post", "url": "/api/attachments", "title": "Add attachment", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/attachments -H 'Content-Type: multipart/form-data' -F 'file=@{filename}' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "create", "group": "Attachments", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/attachment/index.js", "groupTitle": "Attachments" }, { "type": "get", "url": "/api/attachments/:id/download", "title": "Download attachment", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/attachments/:id/download -v -u {name}:{password} -X GET", "type": "json" } ], "name": "download", "group": "Attachments", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/attachment/index.js", "groupTitle": "Attachments" }, { "type": "get", "url": "/api/chat/interactions/{id}/attachment_download", "title": "Download attachment", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/interactions/{id}/attachment_download -v -u {name}:{password} -X GET", "type": "json" } ], "name": "show", "group": "Attachments", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatInteraction/index.js", "groupTitle": "Attachments" }, { "type": "put", "url": "/api/attachments/{id}", "title": "Update an existing Attachment", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/attachments/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateAttachments", "group": "Attachments", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/attachment/index.js", "groupTitle": "Attachments" }, { "type": "post", "url": "/api/auth/local/forgot", "title": "Creates a new password reset token", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/auth/local/forgot -d '{\"email\": \"john.doe@xcally.com\"}' \\\n -H \"Content-Type: application/json\" -X POST", "type": "json" } ], "name": "Local_Forgot_Password", "group": "Authentication", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "email", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/authLocal/index.js", "groupTitle": "Authentication" }, { "type": "post", "url": "/api/auth/local/reset/:token", "title": "Reset user password", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/auth/local/reset/94b422c1fkdjhg766a198da6997yu6gcc963641d -d '{\"password\": \"My_newP@ssw0rd\"}' \\\n -H \"Content-Type: application/json\" -X POST", "type": "json" } ], "name": "Local_Reset_Password", "group": "Authentication", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "password", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/authLocal/index.js", "groupTitle": "Authentication" }, { "type": "post", "url": "/api/auth/google", "title": "Creates a new User token", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/auth/google -d '{\"name\": \"john.doe\", \"password\": \"password\"}' \\\n -H \"Content-Type: application/json\" -X POST", "type": "json" } ], "name": "Local_login", "group": "Authentication", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "password", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/authGoogle/index.js", "groupTitle": "Authentication" }, { "type": "post", "url": "/api/auth/local", "title": "Creates a new User token", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/auth/local -d '{\"name\": \"john.doe\", \"password\": \"password\"}' \\\n -H \"Content-Type: application/json\" -X POST", "type": "json" } ], "name": "Local_login", "group": "Authentication", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "password", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/authLocal/index.js", "groupTitle": "Authentication" }, { "type": "post", "url": "/api/automations", "title": "Creates a new Automation", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/automations -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateAutomations", "group": "Automations", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "channel", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "status", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "timeout", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/automation/index.js", "groupTitle": "Automations" }, { "type": "delete", "url": "/api/automations/{id}", "title": "Deletes a Automation", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/automations/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteAutomations", "group": "Automations", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/automation/index.js", "groupTitle": "Automations" }, { "type": "get", "url": "/api/automations", "title": "Gets a list of Automations", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/automations -v -u {name}:{password}", "type": "json" } ], "name": "GetAutomations", "group": "Automations", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/automations?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/automations?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/automations?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/automations?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/automations?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/automation/index.js", "groupTitle": "Automations" }, { "type": "get", "url": "/api/automations/{id}", "title": "Gets a single Automation", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/automations/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowAutomations", "group": "Automations", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/automation/index.js", "groupTitle": "Automations" }, { "type": "post", "url": "/api/automations/{id}/actions", "title": "Creates new actions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/automations/{id}/actions -d '[{\"firstName\": \"John Doe\", \"email\": \"john.doe@xcally.com\", \"...\": \"...\"}]' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addActions", "group": "Automations", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "Virtual", "optional": true, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "action", "description": "

Allowed values: contactManager, integration, motionbar, jscripty, urlForward, browser

" }, { "group": "Body", "type": "String", "optional": true, "field": "data1", "description": "

contactManager[ListId], integration[intName(zendesk)], motionbar[Popup(0),URL(1),WinApp(2)], urlForward[GET,POST], browser[TemplateId(0),URL(1)]

" }, { "group": "Body", "type": "String", "optional": true, "field": "data2", "description": "

integration[AccountId], motionbar[TemplateId,URL,WinAppPath], urlForward[URL]

" }, { "group": "Body", "type": "String", "optional": true, "field": "data3", "description": "

motionbar[NULL,NULL,WinAppArguments]

" }, { "group": "Body", "type": "String", "optional": true, "field": "data4", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "data5", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "data6", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/automation/index.js", "groupTitle": "Automations" }, { "type": "post", "url": "/api/automations/{id}/conditions", "title": "Creates new conditions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/automations/{id}/conditions -d '[{\"firstName\": \"John Doe\", \"email\": \"john.doe@xcally.com\", \"...\": \"...\"}]' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addConditions", "group": "Automations", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "Virtual", "optional": true, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "field", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "operator", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "value", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/automation/index.js", "groupTitle": "Automations" }, { "type": "get", "url": "/api/automations/{id}/actions", "title": "Gets Automation Actions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/automations/{id}/actions -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getActions", "group": "Automations", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/automation/index.js", "groupTitle": "Automations" }, { "type": "get", "url": "/api/automations/{id}/conditions", "title": "Gets Automation Conditions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/automations/{id}/conditions -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getConditions", "group": "Automations", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/automation/index.js", "groupTitle": "Automations" }, { "type": "put", "url": "/api/automations/{id}", "title": "Update an existing Automation", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/automations/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateAutomations", "group": "Automations", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/automation/index.js", "groupTitle": "Automations" }, { "type": "post", "url": "/api/canned_answers", "title": "Create a new canned answer", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/canned_answers -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "Create", "group": "Canned_Answers", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cannedAnswer/index.js", "groupTitle": "Canned_Answers" }, { "type": "delete", "url": "/api/canned_answers/{id}", "title": "Deletes a Canned Answer", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/canned_answers/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteCanned_Answers", "group": "Canned_Answers", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cannedAnswer/index.js", "groupTitle": "Canned_Answers" }, { "type": "get", "url": "/api/canned_answers", "title": "Gets a list of Canned Answers", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/canned_answers -v -u {name}:{password}", "type": "json" } ], "name": "GetCanned_Answers", "group": "Canned_Answers", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/canned_answers?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/canned_answers?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/canned_answers?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/canned_answers?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/canned_answers?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/cannedAnswer/index.js", "groupTitle": "Canned_Answers" }, { "type": "get", "url": "/api/canned_answers/{id}", "title": "Gets a single Canned Answer", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/canned_answers/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowCanned_Answers", "group": "Canned_Answers", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cannedAnswer/index.js", "groupTitle": "Canned_Answers" }, { "type": "put", "url": "/api/canned_answers/{id}", "title": "Update an existing Canned Answer", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/canned_answers/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateCanned_Answers", "group": "Canned_Answers", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cannedAnswer/index.js", "groupTitle": "Canned_Answers" }, { "type": "delete", "url": "/api/chat/applications/{id}", "title": "Deletes a Application", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/applications/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteApplications", "group": "Chat_Applications", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatApplication/index.js", "groupTitle": "Chat_Applications" }, { "type": "get", "url": "/api/chat/applications/{id}", "title": "Gets a single Application", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/applications/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowApplications", "group": "Chat_Applications", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatApplication/index.js", "groupTitle": "Chat_Applications" }, { "type": "put", "url": "/api/chat/applications/{id}", "title": "Update an existing Application", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/applications/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateApplications", "group": "Chat_Applications", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatApplication/index.js", "groupTitle": "Chat_Applications" }, { "type": "post", "url": "/api/chat/dispositions", "title": "Creates a new Disposition", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/dispositions -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateDispositions", "group": "Chat_Dispositions", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "name", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatDisposition/index.js", "groupTitle": "Chat_Dispositions" }, { "type": "delete", "url": "/api/chat/dispositions/{id}", "title": "Deletes a Disposition", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/dispositions/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteDispositions", "group": "Chat_Dispositions", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatDisposition/index.js", "groupTitle": "Chat_Dispositions" }, { "type": "get", "url": "/api/chat/dispositions/{id}", "title": "Gets a single Disposition", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/dispositions/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowDispositions", "group": "Chat_Dispositions", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatDisposition/index.js", "groupTitle": "Chat_Dispositions" }, { "type": "put", "url": "/api/chat/dispositions/{id}", "title": "Update an existing Disposition", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/dispositions/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateDispositions", "group": "Chat_Dispositions", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatDisposition/index.js", "groupTitle": "Chat_Dispositions" }, { "type": "post", "url": "/api/chat/groups", "title": "Creates a new Group", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/groups -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateGroups", "group": "Chat_Groups", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "write", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatGroup/index.js", "groupTitle": "Chat_Groups" }, { "type": "delete", "url": "/api/chat/groups/{id}", "title": "Deletes a Group", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/groups/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteGroups", "group": "Chat_Groups", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatGroup/index.js", "groupTitle": "Chat_Groups" }, { "type": "get", "url": "/api/chat/groups/describe", "title": "Gets table info about Groups", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/groups/describe -v -u {name}:{password}", "type": "json" } ], "name": "DescribeGroups", "group": "Chat_Groups", "description": "

Motion will return a HTTP status code 200 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatGroup/index.js", "groupTitle": "Chat_Groups" }, { "type": "get", "url": "/api/chat/groups", "title": "Gets a list of Groups", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/groups -v -u {name}:{password}", "type": "json" } ], "name": "GetGroups", "group": "Chat_Groups", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/chat/groups?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/chat/groups?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/chat/groups?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/chat/groups?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/chat/groups?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/chatGroup/index.js", "groupTitle": "Chat_Groups" }, { "type": "delete", "url": "/api/chat/groups/{id}/members", "title": "Removes members from a group", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/groups/{id}/members?ids=1&ids=2 -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "RemoveMembers", "group": "Chat_Groups", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatGroup/index.js", "groupTitle": "Chat_Groups" }, { "type": "get", "url": "/api/chat/groups/{id}", "title": "Gets a single Group", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/groups/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowGroups", "group": "Chat_Groups", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatGroup/index.js", "groupTitle": "Chat_Groups" }, { "type": "post", "url": "/api/chat/groups/{id}/members", "title": "Add members to chat group", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/groups/{id}/members -d '{\"ids\": [1,2]}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addMembers", "group": "Chat_Groups", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatGroup/index.js", "groupTitle": "Chat_Groups" }, { "type": "post", "url": "/api/chat/groups/{id}/messages", "title": "Creates a new group message", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/groups/{id}/messages -d '{\"body\": \"Hi operator!\"}' -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addMessage", "group": "Chat_Groups", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatGroup/index.js", "groupTitle": "Chat_Groups" }, { "type": "get", "url": "/api/chat/groups/{id}/members", "title": "Gets Members", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/groups/{id}/members -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getMembers", "group": "Chat_Groups", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatGroup/index.js", "groupTitle": "Chat_Groups" }, { "type": "get", "url": "/api/chat/groups/{id}/messages", "title": "Gets Messages", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/groups/{id}/messages -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getMessages", "group": "Chat_Groups", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatGroup/index.js", "groupTitle": "Chat_Groups" }, { "type": "get", "url": "/api/chat/groups/{id}/unread", "title": "Get unread chat group messages", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/groups/{id}/unread -H 'Content-Type: application/json' -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getUread", "group": "Chat_Groups", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatGroup/index.js", "groupTitle": "Chat_Groups" }, { "type": "put", "url": "/api/chat/groups/{id}", "title": "Update an existing Group", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/groups/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateGroups", "group": "Chat_Groups", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatGroup/index.js", "groupTitle": "Chat_Groups" }, { "type": "post", "url": "/api/chat/interactions/{id}/tags", "title": "Add tags to the interaction", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/interaction/{id}/tags -d '{\"ids\": [1,2]}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "AddTags", "group": "Chat_Interactions", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatInteraction/index.js", "groupTitle": "Chat_Interactions" }, { "type": "post", "url": "/api/chat/interactions", "title": "Creates a new Interaction", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/interactions -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateInteractions", "group": "Chat_Interactions", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "Boolean", "optional": true, "field": "closed", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "ratingValue", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"star\"", "\"thumb\"" ], "optional": true, "field": "ratingType", "description": "" }, { "group": "Body", "type": "Text", "optional": true, "field": "ratingMessage", "description": "" }, { "group": "Body", "type": "Text", "optional": true, "field": "pathTranscript", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "mailTranscript", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "closedAt", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "disposition", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "note", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "browserName", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "browserVersion", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "osName", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "osVersion", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "deviceModel", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "deviceVendor", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "deviceType", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "referer", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "customerIp", "description": "" }, { "group": "Body", "type": "Text", "optional": true, "field": "formData", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "read1stAt", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "lastMsgAt", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"in\"", "\"out\"" ], "optional": false, "field": "lastMsgDirection", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatInteraction/index.js", "groupTitle": "Chat_Interactions" }, { "type": "delete", "url": "/api/chat/interactions/{id}", "title": "Deletes a Interaction", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/interactions/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteInteractions", "group": "Chat_Interactions", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatInteraction/index.js", "groupTitle": "Chat_Interactions" }, { "type": "get", "url": "/api/chat/interactions/describe", "title": "Gets table info about Interactions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/interactions/describe -v -u {name}:{password}", "type": "json" } ], "name": "DescribeInteractions", "group": "Chat_Interactions", "description": "

Motion will return a HTTP status code 200 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatInteraction/index.js", "groupTitle": "Chat_Interactions" }, { "type": "get", "url": "/api/chat/interactions", "title": "Gets a list of Interactions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/interactions -v -u {name}:{password}", "type": "json" } ], "name": "GetInteractions", "group": "Chat_Interactions", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/chat/interactions?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/chat/interactions?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/chat/interactions?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/chat/interactions?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/chat/interactions?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/chatInteraction/index.js", "groupTitle": "Chat_Interactions" }, { "type": "delete", "url": "/api/chat/interactions/{id}/tags", "title": "Removes tags from interaction", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/interactions/{id}/tags?ids=1&ids=2 -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "RemoveTags", "group": "Chat_Interactions", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatInteraction/index.js", "groupTitle": "Chat_Interactions" }, { "type": "get", "url": "/api/chat/interactions/{id}", "title": "Gets a single Interaction", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/interactions/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowInteractions", "group": "Chat_Interactions", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatInteraction/index.js", "groupTitle": "Chat_Interactions" }, { "type": "put", "url": "/api/chat/interactions/{id}/abandon", "title": "Abandon interaction", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/interactions/{id}/abandon -d '{\"channel\": \"chat\", \"...\": \"...\"}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "abandon", "group": "Chat_Interactions", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

This API is used to set as abandon an interaction and stop the routing.

", "version": "0.0.0", "filename": "server/api/chatInteraction/index.js", "groupTitle": "Chat_Interactions" }, { "type": "post", "url": "/api/chat/interactions/{id}/messages", "title": "Creates new messages", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/interactions/{id}/messages -d '[{\"to\": \"+3901119886500\", \"...\": \"...\"}]' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addMessage", "group": "Chat_Interactions", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "Text", "optional": false, "field": "body", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "read", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "secret", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"in\"", "\"out\"" ], "optional": false, "field": "direction", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "readAt", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatInteraction/index.js", "groupTitle": "Chat_Interactions" }, { "type": "put", "url": "/api/chat/interactions/{id}/close", "title": "Close Interaction", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/interactions/{id}/close -d '[{\"to\": \"+3901119886500\", \"...\": \"...\"}]' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addMessage", "group": "Chat_Interactions", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatInteraction/index.js", "groupTitle": "Chat_Interactions" }, { "type": "post", "url": "/api/chat/interactions/{id}/attachment_upload", "title": "Add attachment", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/interactions/{id}/attachment_upload -H 'Content-Type: multipart/form-data' -F 'file=@{filename}' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "attachmentUpload", "group": "Chat_Interactions", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatInteraction/index.js", "groupTitle": "Chat_Interactions" }, { "type": "get", "url": "/api/chat/interactions/{id}/messages", "title": "Gets interaction messages", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/interactions/{id}/messages -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getMessages", "group": "Chat_Interactions", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatInteraction/index.js", "groupTitle": "Chat_Interactions" }, { "type": "get", "url": "/api/chat/interactions/{id}/my_messages", "title": "Gets interaction messages", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/interactions/{id}/my_messages -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getMyMessages", "group": "Chat_Interactions", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatInteraction/index.js", "groupTitle": "Chat_Interactions" }, { "type": "put", "url": "/api/chat/interactions/{id}", "title": "Update an existing Interaction", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/interactions/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateInteractions", "group": "Chat_Interactions", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatInteraction/index.js", "groupTitle": "Chat_Interactions" }, { "type": "post", "url": "/api/chat/internal/messages", "title": "Creates a new Message", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/internal/messages -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateMessages", "group": "Chat_Internal_Messages", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "Text", "optional": false, "field": "body", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "read", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "ChatInternalMessageId", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatInternalMessage/index.js", "groupTitle": "Chat_Internal_Messages" }, { "type": "delete", "url": "/api/chat/internal/messages/{id}", "title": "Deletes a Message", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/internal/messages/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteMessages", "group": "Chat_Internal_Messages", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatInternalMessage/index.js", "groupTitle": "Chat_Internal_Messages" }, { "type": "get", "url": "/api/chat/internal/messages/describe", "title": "Gets table info about Messages", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/internal/messages/describe -v -u {name}:{password}", "type": "json" } ], "name": "DescribeMessages", "group": "Chat_Internal_Messages", "description": "

Motion will return a HTTP status code 200 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatInternalMessage/index.js", "groupTitle": "Chat_Internal_Messages" }, { "type": "get", "url": "/api/chat/internal/messages", "title": "Gets a list of Messages", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/internal/messages -v -u {name}:{password}", "type": "json" } ], "name": "GetMessages", "group": "Chat_Internal_Messages", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/chat/internal/messages?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/chat/internal/messages?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/chat/internal/messages?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/chat/internal/messages?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/chat/internal/messages?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/chatInternalMessage/index.js", "groupTitle": "Chat_Internal_Messages" }, { "type": "get", "url": "/api/chat/internal/messages/{id}", "title": "Gets a single Message", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/internal/messages/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowMessages", "group": "Chat_Internal_Messages", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatInternalMessage/index.js", "groupTitle": "Chat_Internal_Messages" }, { "type": "put", "url": "/api/chat/internal/messages/{id}", "title": "Update an existing Message", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/internal/messages/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateMessages", "group": "Chat_Internal_Messages", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatInternalMessage/index.js", "groupTitle": "Chat_Internal_Messages" }, { "type": "post", "url": "/api/chat/messages", "title": "Creates a new Message", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/messages -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateMessages", "group": "Chat_Messages", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "Text", "optional": false, "field": "body", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "read", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "secret", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"in\"", "\"out\"" ], "optional": false, "field": "direction", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "readAt", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatMessage/index.js", "groupTitle": "Chat_Messages" }, { "type": "delete", "url": "/api/chat/messages/{id}", "title": "Deletes a Message", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/messages/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteMessages", "group": "Chat_Messages", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatMessage/index.js", "groupTitle": "Chat_Messages" }, { "type": "get", "url": "/api/chat/messages/describe", "title": "Gets table info about Messages", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/messages/describe -v -u {name}:{password}", "type": "json" } ], "name": "DescribeMessages", "group": "Chat_Messages", "description": "

Motion will return a HTTP status code 200 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatMessage/index.js", "groupTitle": "Chat_Messages" }, { "type": "get", "url": "/api/chat/messages", "title": "Gets a list of Messages", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/messages -v -u {name}:{password}", "type": "json" } ], "name": "GetMessages", "group": "Chat_Messages", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/chat/messages?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/chat/messages?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/chat/messages?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/chat/messages?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/chat/messages?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/chatMessage/index.js", "groupTitle": "Chat_Messages" }, { "type": "get", "url": "/api/chat/messages/{id}", "title": "Gets a single Message", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/messages/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowMessages", "group": "Chat_Messages", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatMessage/index.js", "groupTitle": "Chat_Messages" }, { "type": "put", "url": "/api/chat/messages/{id}", "title": "Update an existing Message", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/messages/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateMessages", "group": "Chat_Messages", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatMessage/index.js", "groupTitle": "Chat_Messages" }, { "type": "post", "url": "/api/chat/offline_messages", "title": "Creates a new OfflineMessage", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/offline_messages -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateOfflineMessages", "group": "Chat_Offline_Messages", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "Text", "optional": false, "field": "body", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatOfflineMessage/index.js", "groupTitle": "Chat_Offline_Messages" }, { "type": "delete", "url": "/api/chat/offline_messages/{id}", "title": "Deletes a OfflineMessage", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/offline_messages/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteOfflineMessages", "group": "Chat_Offline_Messages", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatOfflineMessage/index.js", "groupTitle": "Chat_Offline_Messages" }, { "type": "get", "url": "/api/chat/offline_messages/describe", "title": "Gets table info about OfflineMessages", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/offline_messages/describe -v -u {name}:{password}", "type": "json" } ], "name": "DescribeOfflineMessages", "group": "Chat_Offline_Messages", "description": "

Motion will return a HTTP status code 200 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatOfflineMessage/index.js", "groupTitle": "Chat_Offline_Messages" }, { "type": "get", "url": "/api/chat/offline_messages", "title": "Gets a list of OfflineMessages", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/offline_messages -v -u {name}:{password}", "type": "json" } ], "name": "GetOfflineMessages", "group": "Chat_Offline_Messages", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/chat/offline_messages?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/chat/offline_messages?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/chat/offline_messages?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/chat/offline_messages?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/chat/offline_messages?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/chatOfflineMessage/index.js", "groupTitle": "Chat_Offline_Messages" }, { "type": "get", "url": "/api/chat/offline_messages/{id}", "title": "Gets a single OfflineMessage", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/offline_messages/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowOfflineMessages", "group": "Chat_Offline_Messages", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatOfflineMessage/index.js", "groupTitle": "Chat_Offline_Messages" }, { "type": "put", "url": "/api/chat/offline_messages/{id}", "title": "Update an existing OfflineMessage", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/offline_messages/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateOfflineMessages", "group": "Chat_Offline_Messages", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatOfflineMessage/index.js", "groupTitle": "Chat_Offline_Messages" }, { "type": "post", "url": "/api/chat/proactive_actions", "title": "Creates a new Proactive Action", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/proactive_actions -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateProactive_Actions", "group": "Chat_Proactive_Actions", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "name", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"mouseOver\"", "\"timeout\"" ], "optional": true, "field": "type", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "selector", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "timeout", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatProactiveAction/index.js", "groupTitle": "Chat_Proactive_Actions" }, { "type": "delete", "url": "/api/chat/proactive_actions/{id}", "title": "Deletes a Proactive Action", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/proactive_actions/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteProactive_Actions", "group": "Chat_Proactive_Actions", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatProactiveAction/index.js", "groupTitle": "Chat_Proactive_Actions" }, { "type": "get", "url": "/api/chat/proactive_actions/{id}", "title": "Gets a single Proactive Action", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/proactive_actions/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowProactive_Actions", "group": "Chat_Proactive_Actions", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatProactiveAction/index.js", "groupTitle": "Chat_Proactive_Actions" }, { "type": "put", "url": "/api/chat/proactive_actions/{id}", "title": "Update an existing Proactive Action", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/proactive_actions/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateProactive_Actions", "group": "Chat_Proactive_Actions", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatProactiveAction/index.js", "groupTitle": "Chat_Proactive_Actions" }, { "type": "post", "url": "/api/chat/reports/queue", "title": "Creates a new Chat Queue Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/reports/queue -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateChat_Queue_Reports", "group": "Chat_Queue_Reports", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "uniqueid", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "from", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "joinAt", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "leaveAt", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "acceptAt", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "exitAt", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "reason", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatQueueReport/index.js", "groupTitle": "Chat_Queue_Reports" }, { "type": "delete", "url": "/api/chat/reports/queue/{id}", "title": "Deletes a Chat Queue Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/reports/queue/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteChat_Queue_Reports", "group": "Chat_Queue_Reports", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatQueueReport/index.js", "groupTitle": "Chat_Queue_Reports" }, { "type": "get", "url": "/api/chat/reports/queue/describe", "title": "Gets table info about Chat Queue Reports", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/reports/queue/describe -v -u {name}:{password}", "type": "json" } ], "name": "DescribeChat_Queue_Reports", "group": "Chat_Queue_Reports", "description": "

Motion will return a HTTP status code 200 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatQueueReport/index.js", "groupTitle": "Chat_Queue_Reports" }, { "type": "get", "url": "/api/chat/reports/queue", "title": "Gets a list of Chat Queue Reports", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/reports/queue -v -u {name}:{password}", "type": "json" } ], "name": "GetChat_Queue_Reports", "group": "Chat_Queue_Reports", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/chat/reports/queue?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/chat/reports/queue?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/chat/reports/queue?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/chat/reports/queue?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/chat/reports/queue?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/chatQueueReport/index.js", "groupTitle": "Chat_Queue_Reports" }, { "type": "get", "url": "/api/chat/reports/queue/{id}", "title": "Gets a single Chat Queue Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/reports/queue/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowChat_Queue_Reports", "group": "Chat_Queue_Reports", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatQueueReport/index.js", "groupTitle": "Chat_Queue_Reports" }, { "type": "put", "url": "/api/chat/reports/queue/{id}", "title": "Update an existing Chat Queue Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/reports/queue/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateChat_Queue_Reports", "group": "Chat_Queue_Reports", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatQueueReport/index.js", "groupTitle": "Chat_Queue_Reports" }, { "type": "post", "url": "/api/chat/queues/{id}/users", "title": "Add agents to a queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/queues/{id}/users -d '{\"ids\": [1,2], \"penalty\": 2}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "AddAgents", "group": "Chat_Queues", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatQueue/index.js", "groupTitle": "Chat_Queues" }, { "type": "post", "url": "/api/chat/queues/{id}/teams", "title": "Add teams to a queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/queues/{id}/teams -d '{\"ids\": [1,2]}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "AddTeams", "group": "Chat_Queues", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatQueue/index.js", "groupTitle": "Chat_Queues" }, { "type": "post", "url": "/api/chat/queues", "title": "Creates a new Queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/queues -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateQueues", "group": "Chat_Queues", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "timeout", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"rrmemory\"", "\"beepall\"", "\"roundrobin\"" ], "optional": true, "field": "strategy", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatQueue/index.js", "groupTitle": "Chat_Queues" }, { "type": "delete", "url": "/api/chat/queues/{id}", "title": "Deletes a Queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/queues/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteQueues", "group": "Chat_Queues", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatQueue/index.js", "groupTitle": "Chat_Queues" }, { "type": "get", "url": "/api/chat/queues/describe", "title": "Gets table info about Queues", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/queues/describe -v -u {name}:{password}", "type": "json" } ], "name": "DescribeQueues", "group": "Chat_Queues", "description": "

Motion will return a HTTP status code 200 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatQueue/index.js", "groupTitle": "Chat_Queues" }, { "type": "get", "url": "/api/chat/queues/{id}/users", "title": "Gets queue agents", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/queues/{id}/users -v -u {name}:{password} -X POST", "type": "json" } ], "name": "GetAgents", "group": "Chat_Queues", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatQueue/index.js", "groupTitle": "Chat_Queues" }, { "type": "get", "url": "/api/chat/queues/{id}/members", "title": "GetMembers", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/queues/{id}/members -v -u {name}:{password}", "type": "json" } ], "name": "GetMembers", "group": "Chat_Queues", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatQueue/index.js", "groupTitle": "Chat_Queues" }, { "type": "get", "url": "/api/chat/queues", "title": "Gets a list of Queues", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/queues -v -u {name}:{password}", "type": "json" } ], "name": "GetQueues", "group": "Chat_Queues", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/chat/queues?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/chat/queues?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/chat/queues?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/chat/queues?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/chat/queues?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/chatQueue/index.js", "groupTitle": "Chat_Queues" }, { "type": "get", "url": "/api/chat/queues/{id}/teams", "title": "Gets queues list", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/queues/{id}/teams -v -u {name}:{password}", "type": "json" } ], "name": "GetTeams", "group": "Chat_Queues", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatQueue/index.js", "groupTitle": "Chat_Queues" }, { "type": "delete", "url": "/api/chat/queues/{id}/users", "title": "Removes agents from a queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/queues/{id}/users?ids=1&ids=2 -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "RemoveAgents", "group": "Chat_Queues", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatQueue/index.js", "groupTitle": "Chat_Queues" }, { "type": "get", "url": "/api/chat/queues/{id}", "title": "Gets a single Queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/queues/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowQueues", "group": "Chat_Queues", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatQueue/index.js", "groupTitle": "Chat_Queues" }, { "type": "put", "url": "/api/chat/queues/{id}", "title": "Update an existing Queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/queues/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateQueues", "group": "Chat_Queues", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatQueue/index.js", "groupTitle": "Chat_Queues" }, { "type": "post", "url": "/api/chat/websites", "title": "Creates a new Website", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/websites -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateWebsites", "group": "Chat_Websites", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "address", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "mapKey", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "mapKeyOffline", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "key", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "agentAlias", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "color", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "color_button", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "textColor", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "fontSize", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "remote", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "animation", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"rounded\"", "\"squared\"" ], "optional": true, "field": "header_shape", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "header_online", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "start_chat_button", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "offline_chat_button", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "header_offline", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "download_transcript", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "timeout", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "whiteLabel", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "defaultWhiteLabel", "description": "" }, { "group": "Body", "type": "Text", "optional": true, "field": "sitepic", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "closingQuestion", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "formSubmitSuccessMessage", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "formSubmitFailureMessage", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "noteTitle", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "placeholderMessage", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "closingMessage", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "closingMessageButton", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "skipMessageButton", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "conditionAgreement", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "enableRating", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "enableFeedback", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"star\"", "\"thumb\"" ], "optional": true, "field": "ratingType", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "ratingStarsNumber", "description": "" }, { "group": "Body", "type": "Text", "optional": true, "field": "onlineForm", "description": "" }, { "group": "Body", "type": "Text", "optional": true, "field": "offlineForm", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "token", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "autoclose", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "enableCustomerWriting", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "forwardTranscript", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "forwardTranscriptMessage", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "forwardOffline", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "forwardOfflineAddress", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "waitingTitle", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "waitingMessage", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "offlineMessageSubject", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "offlineMessageBody", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "enableUnmanagedNote", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "unmanagedMessage", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "skipUnmanaged", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "sendUnmanaged", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "enableCustomerAttachment", "description": "" }, { "group": "Body", "type": "Text", "optional": true, "field": "agentAvatar", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "showAgentAvatar", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "timezone", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatWebsite/index.js", "groupTitle": "Chat_Websites" }, { "type": "delete", "url": "/api/chat/websites/{id}", "title": "Deletes a Website", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/websites/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteWebsites", "group": "Chat_Websites", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatWebsite/index.js", "groupTitle": "Chat_Websites" }, { "type": "get", "url": "/api/chat/websites/describe", "title": "Gets table info about Websites", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/websites/describe -v -u {name}:{password}", "type": "json" } ], "name": "DescribeWebsites", "group": "Chat_Websites", "description": "

Motion will return a HTTP status code 200 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatWebsite/index.js", "groupTitle": "Chat_Websites" }, { "type": "get", "url": "/api/chat/websites", "title": "Gets a list of Websites", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/websites -v -u {name}:{password}", "type": "json" } ], "name": "GetWebsites", "group": "Chat_Websites", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/chat/websites?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/chat/websites?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/chat/websites?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/chat/websites?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/chat/websites?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/chatWebsite/index.js", "groupTitle": "Chat_Websites" }, { "type": "delete", "url": "/api/openchannel/accounts/{id}/canned_answers", "title": "Removes canned answers from account", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/accounts/{id}/canned_answers?ids=1&ids=2 -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "RemoveAnswers", "group": "Chat_Websites", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatWebsite/index.js", "groupTitle": "Chat_Websites" }, { "type": "get", "url": "/api/chat/websites/{id}", "title": "Gets a single Website", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/websites/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowWebsites", "group": "Chat_Websites", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatWebsite/index.js", "groupTitle": "Chat_Websites" }, { "type": "put", "url": "/api/chat/messages/{id}/accept", "title": "Accepts message", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/messages/{id}/accept \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "acceptMessage", "group": "Chat_Websites", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatMessage/index.js", "groupTitle": "Chat_Websites" }, { "type": "post", "url": "/api/chat/websites/{id}/canned_answers", "title": "Creates new canned answer", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/websites/{id}/canned_answers -d '{\"name\": \"vip\"}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addAnswer", "group": "Chat_Websites", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "key", "description": "" }, { "group": "Body", "type": "Text", "optional": false, "field": "value", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatWebsite/index.js", "groupTitle": "Chat_Websites" }, { "type": "post", "url": "/api/chat/websites/{id}/applications", "title": "Creates new applications", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/websites/{id}/applications -d '[{\"app\": \"queue\", \"...\": \"...\"}]' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addApplications", "group": "Chat_Websites", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "Integer", "optional": false, "field": "priority", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "app", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "appdata", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "interval", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatWebsite/index.js", "groupTitle": "Chat_Websites" }, { "type": "post", "url": "/api/chat/websites/{id}/avatar", "title": "Add avatar", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/websites/{id}/avatar -H 'Content-Type: multipart/form-data' -F 'file=@{filename}' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addAvatar", "group": "Chat_Websites", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatWebsite/index.js", "groupTitle": "Chat_Websites" }, { "type": "post", "url": "/api/chat/websites/{id}/dispositions", "title": "Creates new disposition", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/websites/{id}/dispositions -d '{\"name\": \"Satisfied\"}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addDisposition", "group": "Chat_Websites", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "name", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatWebsite/index.js", "groupTitle": "Chat_Websites" }, { "type": "post", "url": "/api/chat/websites/{id}/dispositions", "title": "Creates many dispositions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/websites/{id}/dispositions -d '[{\"name\": \"Satisfied\"}]' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addDispositions", "group": "Chat_Websites", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "name", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatWebsite/index.js", "groupTitle": "Chat_Websites" }, { "type": "post", "url": "/api/chat/accounts/{id}/interactions", "title": "Creates new interactions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/websites/{id}/interactions -d '{\"host\": \"host\", \"username\": \"username\", \"password\": \"password\", \"...\": \"...\"}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addInteraction", "group": "Chat_Websites", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "Boolean", "optional": true, "field": "closed", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "ratingValue", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"star\"", "\"thumb\"" ], "optional": true, "field": "ratingType", "description": "" }, { "group": "Body", "type": "Text", "optional": true, "field": "ratingMessage", "description": "" }, { "group": "Body", "type": "Text", "optional": true, "field": "pathTranscript", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "mailTranscript", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "closedAt", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "disposition", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "note", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "browserName", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "browserVersion", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "osName", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "osVersion", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "deviceModel", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "deviceVendor", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "deviceType", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "referer", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "customerIp", "description": "" }, { "group": "Body", "type": "Text", "optional": true, "field": "formData", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "read1stAt", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "lastMsgAt", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"in\"", "\"out\"" ], "optional": false, "field": "lastMsgDirection", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatWebsite/index.js", "groupTitle": "Chat_Websites" }, { "type": "post", "url": "/api/chat/websites/{id}/logo", "title": "Add logo", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/websites/{id}/logo -H 'Content-Type: multipart/form-data' -F 'file=@{filename}' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addLogo", "group": "Chat_Websites", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatWebsite/index.js", "groupTitle": "Chat_Websites" }, { "type": "post", "url": "/api/chat/websites/{id}/proactive_actions", "title": "Creates new Proactive Actions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/websites/{id}/proactive_actions -d '[{\"name\": \"Satisfied\"}]' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addProactiveActions", "group": "Chat_Websites", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "name", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"mouseOver\"", "\"timeout\"" ], "optional": true, "field": "type", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "selector", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "timeout", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatWebsite/index.js", "groupTitle": "Chat_Websites" }, { "type": "get", "url": "/api/chat/websites/{id}/canned_answers", "title": "Gets account canned answers", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/websites/{id}/canned_answers -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getAnswers", "group": "Chat_Websites", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatWebsite/index.js", "groupTitle": "Chat_Websites" }, { "type": "get", "url": "/api/chat/websites/{id}/applications", "title": "Gets Website Applications", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/websites/{id}/applications -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getApplications", "group": "Chat_Websites", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatWebsite/index.js", "groupTitle": "Chat_Websites" }, { "type": "get", "url": "/api/chat/websites/{id}/avatar", "title": "Get avatar", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/websites/{id}/avatar -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getAvatar", "group": "Chat_Websites", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatWebsite/index.js", "groupTitle": "Chat_Websites" }, { "type": "get", "url": "/api/chat/websites/{id}/dispositions", "title": "Gets Website Dispositions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/websites/{id}/dispositions -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getDispositions", "group": "Chat_Websites", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatWebsite/index.js", "groupTitle": "Chat_Websites" }, { "type": "get", "url": "/api/chat/websites/{id}/fields", "title": "Gets Website Fields", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/websites/{id}/fields -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getFields", "group": "Chat_Websites", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatWebsite/index.js", "groupTitle": "Chat_Websites" }, { "type": "get", "url": "/api/chat/websites/{id}/interactions", "title": "Gets Website Interactions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/websites/{id}/interactions -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getInteraction", "group": "Chat_Websites", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatWebsite/index.js", "groupTitle": "Chat_Websites" }, { "type": "get", "url": "/api/chat/websites/{id}/logo", "title": "Get logo", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/websites/{id}/logo -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getLogo", "group": "Chat_Websites", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatWebsite/index.js", "groupTitle": "Chat_Websites" }, { "type": "get", "url": "/api/chat/websites/{id}/offline_messages", "title": "Gets Website Offline Messages", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/websites/{id}/offline_messages -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getOfflineMessages", "group": "Chat_Websites", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatWebsite/index.js", "groupTitle": "Chat_Websites" }, { "type": "get", "url": "/api/chat/websites/{id}/proactive_actions", "title": "Gets Website Proactive Actions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/websites/{id}/proactive_actions -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getProactiveActions", "group": "Chat_Websites", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatWebsite/index.js", "groupTitle": "Chat_Websites" }, { "type": "get", "url": "/api/chat/websites/{id}/snippet", "title": "Gets Website Snippet", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/websites/{id}/snippet -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getSnippet", "group": "Chat_Websites", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatWebsite/index.js", "groupTitle": "Chat_Websites" }, { "type": "post", "url": "/api/chat/websites/{id}/notify", "title": "Notify new message", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/websites/{id}/notify -d '{\"body\": \"hello world\", \"...\": \"...\"}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "notify", "group": "Chat_Websites", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

This API is used to create a new chat message to be sent to the system.

", "version": "0.0.0", "filename": "server/api/chatWebsite/index.js", "groupTitle": "Chat_Websites" }, { "type": "post", "url": "/api/chat/websites/{id}/offline", "title": "Offline message", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/websites/{id}/offline -d '{\"body\": \"hello world\", \"...\": \"...\"}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "offline", "group": "Chat_Websites", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatWebsite/index.js", "groupTitle": "Chat_Websites" }, { "type": "put", "url": "/api/chat/messages/{id}/reject", "title": "Rejects message", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/messages/{id}/reject \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "rejectMessage", "group": "Chat_Websites", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatMessage/index.js", "groupTitle": "Chat_Websites" }, { "type": "put", "url": "/api/chat/websites/{id}", "title": "Update an existing Website", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/websites/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateWebsites", "group": "Chat_Websites", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatWebsite/index.js", "groupTitle": "Chat_Websites" }, { "type": "post", "url": "/api/cm/companies", "title": "Creates a new Company", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/companies -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateCompanies", "group": "Cm_Companies", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "vat", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "companyId", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "website", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "phone", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "fax", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "type", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "street", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "postalCode", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "city", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "country", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "email", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "emailDomain", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "sStreet", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "sPostalCode", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "sCity", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "sCountry", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmCompany/index.js", "groupTitle": "Cm_Companies" }, { "type": "delete", "url": "/api/cm/companies/{id}", "title": "Deletes a Company", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/companies/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteCompanies", "group": "Cm_Companies", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmCompany/index.js", "groupTitle": "Cm_Companies" }, { "type": "get", "url": "/api/cm/companies", "title": "Gets a list of Companies", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/companies -v -u {name}:{password}", "type": "json" } ], "name": "GetCompanies", "group": "Cm_Companies", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/cm/companies?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/cm/companies?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/cm/companies?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/cm/companies?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/cm/companies?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/cmCompany/index.js", "groupTitle": "Cm_Companies" }, { "type": "get", "url": "/api/cm/companies/{id}", "title": "Gets a single Company", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/companies/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowCompanies", "group": "Cm_Companies", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmCompany/index.js", "groupTitle": "Cm_Companies" }, { "type": "post", "url": "/api/cm/companies/{id}/contacts", "title": "Creates new contacts", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/companies/{id}/contacts -d '[{\"firstName\": \"John Doe\", \"email\": \"john.doe@xcally.com\", \"...\": \"...\"}]' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addContacts", "group": "Cm_Companies", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "firstName", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "lastName", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "tags", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "street", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "postalCode", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "city", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "country", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "dateOfBirth", "description": "" }, { "group": "Body", "type": "Text", "optional": true, "field": "description", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "phone", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "mobile", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "fax", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "email", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "url", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "facebook", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "twitter", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmCompany/index.js", "groupTitle": "Cm_Companies" }, { "type": "get", "url": "/api/cm/companies/{id}/contacts", "title": "Gets List Contacts", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/companies/{id}/contacts -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getContacts", "group": "Cm_Companies", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmCompany/index.js", "groupTitle": "Cm_Companies" }, { "type": "put", "url": "/api/cm/companies/{id}", "title": "Update an existing Company", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/companies/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateCompanies", "group": "Cm_Companies", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmCompany/index.js", "groupTitle": "Cm_Companies" }, { "type": "delete", "url": "/api/cm/contacts/{id}", "title": "Deletes a Contact", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/contacts/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteContacts", "group": "Cm_Contacts", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmContact/index.js", "groupTitle": "Cm_Contacts" }, { "type": "get", "url": "/api/cm/contacts/describe", "title": "Gets table info about Contacts", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/contacts/describe -v -u {name}:{password}", "type": "json" } ], "name": "DescribeContacts", "group": "Cm_Contacts", "description": "

Motion will return a HTTP status code 200 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmContact/index.js", "groupTitle": "Cm_Contacts" }, { "type": "get", "url": "/api/cm/contacts/{id}/finals", "title": "Gets contact hopper finals", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/contacts/{id}/hopper_finals -v -u {name}:{password} -X GET", "type": "json" } ], "name": "GetHopperFinals", "group": "Cm_Contacts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmContact/index.js", "groupTitle": "Cm_Contacts" }, { "type": "get", "url": "/api/cm/contacts/{id}/hopper_histories", "title": "Gets contact hopper histories", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/contacts/{id}/hopper_histories -v -u {name}:{password} -X GET", "type": "json" } ], "name": "GetHopperHistories", "group": "Cm_Contacts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmContact/index.js", "groupTitle": "Cm_Contacts" }, { "type": "get", "url": "/api/cm/contacts/{id}/hoppers", "title": "Gets contact hoppers", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/contacts/{id}/hoppers -v -u {name}:{password} -X GET", "type": "json" } ], "name": "GetHoppers", "group": "Cm_Contacts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmContact/index.js", "groupTitle": "Cm_Contacts" }, { "type": "post", "url": "/api/cm/contacts", "title": "Create Contact", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/contacts -d '{\"firstName\": \"John\", \"lastName\": \"doe\", \"...\": \"...\"}' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "create", "group": "Cm_Contacts", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmContact/index.js", "groupTitle": "Cm_Contacts" }, { "type": "post", "url": "/api/cm/contacts", "title": "Create Contacts", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/contacts -d '[{\"firstName\": \"John\", \"lastName\": \"doe\", \"...\": \"...\"}]' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "create", "group": "Cm_Contacts", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmContact/index.js", "groupTitle": "Cm_Contacts" }, { "type": "get", "url": "/api/cm/contacts/{id}/jscripty_sessions", "title": "Gets contact hopper blacks", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/contacts/{id}/hopper_black -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getJscriptySessions", "group": "Cm_Contacts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmContact/index.js", "groupTitle": "Cm_Contacts" }, { "type": "get", "url": "/api/cm/contacts", "title": "Gets all the Contacts", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/contacts -v -u {name}:{password} -X GET", "type": "json" } ], "name": "index", "group": "Cm_Contacts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmContact/index.js", "groupTitle": "Cm_Contacts" }, { "type": "post", "url": "/api/cm/contacts/merge", "title": "Merge Contact", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/contacts/merge -d '{\"ids\": [1, 2, 3]}' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "merge", "group": "Cm_Contacts", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmContact/index.js", "groupTitle": "Cm_Contacts" }, { "type": "get", "url": "/api/cm/contacts/{id}", "title": "Gets a single Contact", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/contacts/{id} -v -u {name}:{password} -X GET", "type": "json" } ], "name": "show", "group": "Cm_Contacts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmContact/index.js", "groupTitle": "Cm_Contacts" }, { "type": "put", "url": "/api/cm/contacts/{id}", "title": "Update a single Contact", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/contacts/{id} -d '{\"fullName\": \"John\", \"lastName\": \"Doe\"}' -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "update", "group": "Cm_Contacts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmContact/index.js", "groupTitle": "Cm_Contacts" }, { "type": "delete", "url": "/api/cm/custom_fields/{id}", "title": "Deletes a Custom Field", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/custom_fields/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteCustom_Fields", "group": "Cm_Custom_Fields", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmCustomField/index.js", "groupTitle": "Cm_Custom_Fields" }, { "type": "get", "url": "/api/cm/custom_fields", "title": "Gets a list of Custom Fields", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/custom_fields -v -u {name}:{password}", "type": "json" } ], "name": "GetCustom_Fields", "group": "Cm_Custom_Fields", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/cm/custom_fields?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/cm/custom_fields?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/cm/custom_fields?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/cm/custom_fields?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/cm/custom_fields?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/cmCustomField/index.js", "groupTitle": "Cm_Custom_Fields" }, { "type": "get", "url": "/api/cm/custom_fields/{id}", "title": "Gets a single Custom Field", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/custom_fields/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowCustom_Fields", "group": "Cm_Custom_Fields", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmCustomField/index.js", "groupTitle": "Cm_Custom_Fields" }, { "type": "put", "url": "/api/cm/custom_fields/{id}", "title": "Update an existing Custom Field", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/custom_fields/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateCustom_Fields", "group": "Cm_Custom_Fields", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmCustomField/index.js", "groupTitle": "Cm_Custom_Fields" }, { "type": "post", "url": "/api/cm/hopper", "title": "Creates a new Hopper", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/hopper -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateHopper", "group": "Cm_Hopper", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "phone", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "active", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "scheduledat", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "countbusyretry", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "countcongestionretry", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "countnoanswerretry", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "callback", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "callbackuniqueid", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "callbackat", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "priority", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "recallme", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "ContactId", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "ListId", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "UserId", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "VoiceQueueId", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "CampaignId", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmHopper/index.js", "groupTitle": "Cm_Hopper" }, { "type": "get", "url": "/api/cm/hopper/describe", "title": "Gets table info about Hopper", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/hopper/describe -v -u {name}:{password}", "type": "json" } ], "name": "DescribeHopper", "group": "Cm_Hopper", "description": "

Motion will return a HTTP status code 200 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmHopper/index.js", "groupTitle": "Cm_Hopper" }, { "type": "get", "url": "/api/cm/hopper", "title": "Gets a list of Hopper", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/hopper -v -u {name}:{password}", "type": "json" } ], "name": "GetHopper", "group": "Cm_Hopper", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/cm/hopper?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/cm/hopper?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/cm/hopper?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/cm/hopper?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/cm/hopper?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/cmHopper/index.js", "groupTitle": "Cm_Hopper" }, { "type": "get", "url": "/api/cm/hopper/{id}", "title": "Gets a single Hopper", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/hopper/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowHopper", "group": "Cm_Hopper", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmHopper/index.js", "groupTitle": "Cm_Hopper" }, { "type": "delete", "url": "/api/cm/hopper_black/{id}", "title": "Deletes a Hopper Black", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/hopper_black/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteHopper_Black", "group": "Cm_Hopper_Black", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmHopperBlack/index.js", "groupTitle": "Cm_Hopper_Black" }, { "type": "get", "url": "/api/cm/hopper_black/describe", "title": "Gets table info about Hopper Black", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/hopper_black/describe -v -u {name}:{password}", "type": "json" } ], "name": "DescribeHopper_Black", "group": "Cm_Hopper_Black", "description": "

Motion will return a HTTP status code 200 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmHopperBlack/index.js", "groupTitle": "Cm_Hopper_Black" }, { "type": "get", "url": "/api/cm/hopper_black", "title": "Gets a list of Hopper Black", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/hopper_black -v -u {name}:{password}", "type": "json" } ], "name": "GetHopper_Black", "group": "Cm_Hopper_Black", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/cm/hopper_black?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/cm/hopper_black?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/cm/hopper_black?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/cm/hopper_black?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/cm/hopper_black?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/cmHopperBlack/index.js", "groupTitle": "Cm_Hopper_Black" }, { "type": "get", "url": "/api/cm/hopper_black/{id}", "title": "Gets a single Hopper Black", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/hopper_black/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowHopper_Black", "group": "Cm_Hopper_Black", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmHopperBlack/index.js", "groupTitle": "Cm_Hopper_Black" }, { "type": "put", "url": "/api/cm/hopper_black/{id}", "title": "Update an existing Hopper Black", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/hopper_black/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateHopper_Black", "group": "Cm_Hopper_Black", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmHopperBlack/index.js", "groupTitle": "Cm_Hopper_Black" }, { "type": "get", "url": "/api/cm/hopper_final/describe", "title": "Gets table info about HopperFinal", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/hopper_final/describe -v -u {name}:{password}", "type": "json" } ], "name": "DescribeHopperFinal", "group": "Cm_Hopper_Final", "description": "

Motion will return a HTTP status code 200 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmHopperFinal/index.js", "groupTitle": "Cm_Hopper_Final" }, { "type": "get", "url": "/api/cm/hopper_final", "title": "Gets a list of HopperFinal", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/hopper_final -v -u {name}:{password}", "type": "json" } ], "name": "GetHopperFinal", "group": "Cm_Hopper_Final", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/cm/hopper_final?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/cm/hopper_final?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/cm/hopper_final?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/cm/hopper_final?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/cm/hopper_final?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/cmHopperFinal/index.js", "groupTitle": "Cm_Hopper_Final" }, { "type": "get", "url": "/api/cm/hopper_final/{id}", "title": "Gets a single HopperFinal", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/hopper_final/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowHopperFinal", "group": "Cm_Hopper_Final", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmHopperFinal/index.js", "groupTitle": "Cm_Hopper_Final" }, { "type": "post", "url": "/api/cm/hopper_final/checkContactHopper", "title": "Check if contact is in hopper", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/hopper_final/checkContactHopper -d '{\"VoiceQueueId\": \"VoiceQueueId\", \"CampaignId\": \"CampaignId\", \"ContactId\": \"ContactId\"}' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "_checkContactHopper", "group": "Cm_Hopper_Final", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmHopperFinal/index.js", "groupTitle": "Cm_Hopper_Final" }, { "type": "get", "url": "/api/cm/hopper_final/campaign/countAttributes/{id}", "title": "Return number contacts for attributes", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/hopper_final/campaign/countAttributes/{id} -d '{\"disposition\": \"OK\"}' -v -u {name}:{password} -X GET", "type": "json" } ], "name": "countContactsIvrCampaignHopperFinal", "group": "Cm_Hopper_Final", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmHopperFinal/index.js", "groupTitle": "Cm_Hopper_Final" }, { "type": "get", "url": "/api/cm/hopper_final/voice/queue/countAttributes/{id}", "title": "Return number contacts for attributes", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/hopper_final/voice/queue/countAttributes/{id} -d '{\"disposition\": \"OK\"}' -v -u {name}:{password} -X GET", "type": "json" } ], "name": "countContactsQueueCampaignHopperFinal", "group": "Cm_Hopper_Final", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmHopperFinal/index.js", "groupTitle": "Cm_Hopper_Final" }, { "type": "post", "url": "/api/cm/hopper_final/campaign/{id}", "title": "Move contacts in hopper", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/hopper_final/campaign/moveContacts/{id} -d '{\"state\": \"state\"}' -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "moveContactsIvrCampaignHopperFinal", "group": "Cm_Hopper_Final", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmHopperFinal/index.js", "groupTitle": "Cm_Hopper_Final" }, { "type": "post", "url": "/api/cm/hopper_final/voice/queue/{id}", "title": "Move contacts in hopper", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/hopper_final/voice/queue/moveContacts/{id} -d '{\"state\": \"state\"}' -H 'Content-Type: application/json' -v -u {name}:{password}", "type": "json" } ], "name": "moveContactsQueueCampaignHopperFinal", "group": "Cm_Hopper_Final", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmHopperFinal/index.js", "groupTitle": "Cm_Hopper_Final" }, { "type": "put", "url": "/api/cm/hopper_final/{id}", "title": "Update a single hopper final", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/hopper_final/{id} -d '{\"disposition\": \"OK\"}' -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "update", "group": "Cm_Hopper_Final", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmHopperFinal/index.js", "groupTitle": "Cm_Hopper_Final" }, { "type": "post", "url": "/api/cm/hopper_history", "title": "Creates a new HopperHistory", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/hopper_history -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateHopperHistory", "group": "Cm_Hopper_History", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "Integer", "optional": true, "field": "state", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "statedesc", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "scheduledat", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "countbusyretry", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "countcongestionretry", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "countnoanswerretry", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "countglobal", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "uniqueid", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "calleridnum", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "calleridname", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "starttime", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "responsetime", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "answertime", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "droptime", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "endtime", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "ringtime", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "holdtime", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "talktime", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "followuptime", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "dropreason", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "campaign", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "campaigntype", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "membername", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "reason", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "amd", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "fax", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "callback", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "callbackuniqueid", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "callbackat", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "recallme", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "editedat", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "edited", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmHopperHistory/index.js", "groupTitle": "Cm_Hopper_History" }, { "type": "get", "url": "/api/cm/hopper_history/describe", "title": "Gets table info about HopperHistory", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/hopper_history/describe -v -u {name}:{password}", "type": "json" } ], "name": "DescribeHopperHistory", "group": "Cm_Hopper_History", "description": "

Motion will return a HTTP status code 200 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmHopperHistory/index.js", "groupTitle": "Cm_Hopper_History" }, { "type": "get", "url": "/api/cm/hopper_history", "title": "Gets a list of HopperHistory", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/hopper_history -v -u {name}:{password}", "type": "json" } ], "name": "GetHopperHistory", "group": "Cm_Hopper_History", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/cm/hopper_history?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/cm/hopper_history?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/cm/hopper_history?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/cm/hopper_history?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/cm/hopper_history?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/cmHopperHistory/index.js", "groupTitle": "Cm_Hopper_History" }, { "type": "get", "url": "/api/cm/hopper_history/{id}", "title": "Gets a single HopperHistory", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/hopper_history/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowHopperHistory", "group": "Cm_Hopper_History", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmHopperHistory/index.js", "groupTitle": "Cm_Hopper_History" }, { "type": "put", "url": "/api/cm/hopper_history/{id}", "title": "Update a single hopper history", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/hopper_history/{id} -d '{\"disposition\": \"OK\"}' -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "update", "group": "Cm_Hopper_History", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmHopperHistory/index.js", "groupTitle": "Cm_Hopper_History" }, { "type": "delete", "url": "/api/cm/hopper/{id}", "title": "Delete Hopper", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/hopper/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "destroy", "group": "Cm_Hopper", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmHopper/index.js", "groupTitle": "Cm_Hopper" }, { "type": "get", "url": "/api/cm/hopper/opencontacts", "title": "Gets Open Contacts", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/hopper/opencontacts -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getOpenContacts", "group": "Cm_Hopper", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmHopper/index.js", "groupTitle": "Cm_Hopper" }, { "type": "post", "url": "/api/cm/hopper/preview", "title": "Gets Preview Dialer Contacts", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/hopper/preview -d '{\"hopperIds\": [1,2]}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getPreview", "group": "Cm_Hopper", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmHopper/index.js", "groupTitle": "Cm_Hopper" }, { "type": "put", "url": "/api/cm/hopper/{id}", "title": "Update an existing Hopper", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/hopper/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateHopper", "group": "Cm_Hopper", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmHopper/index.js", "groupTitle": "Cm_Hopper" }, { "type": "post", "url": "/api/cm/lists", "title": "Creates a new List", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/lists -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateLists", "group": "Cm_Lists", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmList/index.js", "groupTitle": "Cm_Lists" }, { "type": "delete", "url": "/api/cm/lists/{id}", "title": "Deletes a List", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/lists/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteLists", "group": "Cm_Lists", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmList/index.js", "groupTitle": "Cm_Lists" }, { "type": "get", "url": "/api/cm/lists/{id}/users", "title": "Gets agents from list", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/lists/{id}/users -v -u {name}:{password} -X GET", "type": "json" } ], "name": "GetAgents", "group": "Cm_Lists", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmList/index.js", "groupTitle": "Cm_Lists" }, { "type": "get", "url": "/api/cm/lists", "title": "Gets a list of Lists", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/lists -v -u {name}:{password}", "type": "json" } ], "name": "GetLists", "group": "Cm_Lists", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/cm/lists?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/cm/lists?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/cm/lists?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/cm/lists?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/cm/lists?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/cmList/index.js", "groupTitle": "Cm_Lists" }, { "type": "delete", "url": "/api/cm/lists/{id}/users", "title": "Removes agents from a list", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/lists/{id}/users?ids=1&ids=2 -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "RemoveAgents", "group": "Cm_Lists", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmList/index.js", "groupTitle": "Cm_Lists" }, { "type": "get", "url": "/api/cm/lists/{id}", "title": "Gets a single List", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/lists/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowLists", "group": "Cm_Lists", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmList/index.js", "groupTitle": "Cm_Lists" }, { "type": "post", "url": "/api/cm/lists/{id}/users", "title": "Adds agents to a list", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/lists/{id}/users -d '{\"ids\": [1,2]}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addAgents", "group": "Cm_Lists", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmList/index.js", "groupTitle": "Cm_Lists" }, { "type": "post", "url": "/api/cm/lists/{id}/contacts", "title": "Creates new contacts", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/lists/{id}/contacts -d '[{\"firstName\": \"John Doe\", \"email\": \"john.doe@xcally.com\", \"...\": \"...\"}]' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addContacts", "group": "Cm_Lists", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "firstName", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "lastName", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "tags", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "street", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "postalCode", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "city", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "country", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "dateOfBirth", "description": "" }, { "group": "Body", "type": "Text", "optional": true, "field": "description", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "phone", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "mobile", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "fax", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "email", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "url", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "facebook", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "twitter", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmList/index.js", "groupTitle": "Cm_Lists" }, { "type": "post", "url": "/api/cm/lists/{id}/fields", "title": "Creates a new custom field", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/lists/{id}/fields -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addCustomField", "group": "Cm_Lists", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmList/index.js", "groupTitle": "Cm_Lists" }, { "type": "post", "url": "/api/lists/{id}/dispositions", "title": "Creates a new sub disposition", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/lists/{id}/disposition -d '{\"name\": \"SATISFIED\"}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addDisposition", "group": "Cm_Lists", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmList/index.js", "groupTitle": "Cm_Lists" }, { "type": "get", "url": "/api/cm/lists/{id}/contacts", "title": "Gets List Contacts", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/lists/{id}/contacts -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getContacts", "group": "Cm_Lists", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmList/index.js", "groupTitle": "Cm_Lists" }, { "type": "get", "url": "/api/cm/lists/{id}/fields", "title": "Gets Custom Fields", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/lists/{id}/fields -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getCustomFields", "group": "Cm_Lists", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmList/index.js", "groupTitle": "Cm_Lists" }, { "type": "get", "url": "/api/cm/lists/{id}/dispositions", "title": "Gets Dispositions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/lists/{id}/dispositions -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getDispositions", "group": "Cm_Lists", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmList/index.js", "groupTitle": "Cm_Lists" }, { "type": "get", "url": "/api/cm/lists/{id}/contacts/csv", "title": "Gets CSV List Contacts", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/lists/{id}/contacts/csv -v -u {name}:{password} -X GET", "type": "json" } ], "name": "grunt", "group": "Cm_Lists", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmList/index.js", "groupTitle": "Cm_Lists" }, { "type": "put", "url": "/api/cm/lists/{id}", "title": "Update an existing List", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/lists/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateLists", "group": "Cm_Lists", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmList/index.js", "groupTitle": "Cm_Lists" }, { "type": "post", "url": "/api/cm/contacts/csv", "title": "Create new contacts by csv", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/contacts/csv -H 'Content-Type: multipart/form-data' -F 'file=@{filename}' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "uploadCsv", "group": "Cm_contacts", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmContact/index.js", "groupTitle": "Cm_contacts" }, { "type": "delete", "url": "/api/conditions/{id}", "title": "Deletes a Condition", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/conditions/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteConditions", "group": "Conditions", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/condition/index.js", "groupTitle": "Conditions" }, { "type": "put", "url": "/api/conditions/{id}", "title": "Update an existing Condition", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/conditions/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateConditions", "group": "Conditions", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/condition/index.js", "groupTitle": "Conditions" }, { "type": "post", "url": "/api/cm/custom_field", "title": "Create a new custom field", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/custom_field -d '{\"name\": \"mycf\", \"type\": \"text\"}' -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateCustomField", "group": "Custom_Fields", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmCustomField/index.js", "groupTitle": "Custom_Fields" }, { "type": "post", "url": "/api/dashboards/items", "title": "Create dasboard item", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/dashboards/items \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "Create", "group": "Dashboard_Items", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/dashboardItem/index.js", "groupTitle": "Dashboard_Items" }, { "type": "delete", "url": "/api/dashboards/items/{id}", "title": "Deletes a Dashboard Item", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/dashboards/items/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteDashboard_Items", "group": "Dashboard_Items", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/dashboardItem/index.js", "groupTitle": "Dashboard_Items" }, { "type": "get", "url": "/api/dashboards/items/{id}", "title": "Gets a single Dashboard Item", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/dashboards/items/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowDashboard_Items", "group": "Dashboard_Items", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/dashboardItem/index.js", "groupTitle": "Dashboard_Items" }, { "type": "put", "url": "/api/dashboards/items/{id}", "title": "Update an existing item", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/dashboards/items/{id} -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "Update", "group": "Dashboard_Items", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/dashboardItem/index.js", "groupTitle": "Dashboard_Items" }, { "type": "post", "url": "/api/dashboards/clone", "title": "Clone an existing Dashboard", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/dashboards/clone -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CloneDashboards", "group": "Dashboards", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/dashboard/index.js", "groupTitle": "Dashboards" }, { "type": "post", "url": "/api/dashboards", "title": "Creates a new Dashboard", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/dashboards -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateDashboards", "group": "Dashboards", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/dashboard/index.js", "groupTitle": "Dashboards" }, { "type": "delete", "url": "/api/dashboards/{id}", "title": "Deletes a Dashboard", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/dashboards/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteDashboards", "group": "Dashboards", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/dashboard/index.js", "groupTitle": "Dashboards" }, { "type": "get", "url": "/api/dashboards", "title": "Gets a list of Dashboards", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/dashboards -v -u {name}:{password}", "type": "json" } ], "name": "GetDashboards", "group": "Dashboards", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/dashboards?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/dashboards?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/dashboards?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/dashboards?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/dashboards?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/dashboard/index.js", "groupTitle": "Dashboards" }, { "type": "get", "url": "/api/dashboards/{id}", "title": "Gets a single Dashboard", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/dashboards/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowDashboards", "group": "Dashboards", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/dashboard/index.js", "groupTitle": "Dashboards" }, { "type": "post", "url": "/api/dashboards/{id}/items", "title": "Creates new item", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/dashboards/{id}/items -d '{\"type\": \"counter\", \"...\": \"...\"}]' -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addItem", "group": "Dashboards", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/dashboard/index.js", "groupTitle": "Dashboards" }, { "type": "put", "url": "/api/dashboards/{id}", "title": "Update an existing Dashboard", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/dashboards/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateDashboards", "group": "Dashboards", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/dashboard/index.js", "groupTitle": "Dashboards" }, { "type": "get", "url": "/api/dashboards/{id}/items", "title": "Gets items", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/dashboards/{id}/items -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getItems", "group": "Dashboars", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/dashboard/index.js", "groupTitle": "Dashboars" }, { "type": "post", "url": "/api/integrations/desk/accounts", "title": "Creates a new Desk Account", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/desk/accounts -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateDesk_Accounts", "group": "Desk_Accounts", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": true, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "username", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "remoteUri", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"basic\"" ], "optional": true, "field": "authType", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "password", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "consumerKey", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "consumerSecret", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "token", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "tokenSecret", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "serverUrl", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"integrationTab\"", "\"newTab\"" ], "optional": true, "field": "type", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intDeskAccount/index.js", "groupTitle": "Desk_Accounts" }, { "type": "delete", "url": "/api/integrations/desk/accounts/{id}", "title": "Deletes a Desk Account", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/desk/accounts/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteDesk_Accounts", "group": "Desk_Accounts", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intDeskAccount/index.js", "groupTitle": "Desk_Accounts" }, { "type": "get", "url": "/api/integrations/desk/accounts", "title": "Gets a list of Desk Accounts", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/desk/accounts -v -u {name}:{password}", "type": "json" } ], "name": "GetDesk_Accounts", "group": "Desk_Accounts", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/integrations/desk/accounts?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/integrations/desk/accounts?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/integrations/desk/accounts?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/integrations/desk/accounts?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/integrations/desk/accounts?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/intDeskAccount/index.js", "groupTitle": "Desk_Accounts" }, { "type": "get", "url": "/api/integrations/desk/accounts/{id}", "title": "Gets a single Desk Account", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/desk/accounts/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowDesk_Accounts", "group": "Desk_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intDeskAccount/index.js", "groupTitle": "Desk_Accounts" }, { "type": "post", "url": "/api/integrations/desk/accounts/{id}/configurations", "title": "Creates new configuration", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/desk/accounts/{id}/configurations -d '{\"name\": \"conf1\"}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addConfiguration", "group": "Desk_Accounts", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intDeskAccount/index.js", "groupTitle": "Desk_Accounts" }, { "type": "get", "url": "/api/integrations/desk/accounts/{id}/configurations", "title": "Gets account configurations", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/desk/accounts/{id}/configurations -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getConfigurations", "group": "Desk_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intDeskAccount/index.js", "groupTitle": "Desk_Accounts" }, { "type": "get", "url": "/api/integrations/desk/accounts/{id}/fields", "title": "Gets account fields", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/desk/accounts/{id}/fields -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getFields", "group": "Desk_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intDeskAccount/index.js", "groupTitle": "Desk_Accounts" }, { "type": "put", "url": "/api/integrations/desk/accounts/{id}", "title": "Update an existing Desk Account", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/desk/accounts/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateDesk_Accounts", "group": "Desk_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intDeskAccount/index.js", "groupTitle": "Desk_Accounts" }, { "type": "post", "url": "/api/integrations/desk/configurations", "title": "Creates a new Desk Configuration", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/desk/configurations -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateDesk_Configurations", "group": "Desk_Configurations", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": true, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intDeskConfiguration/index.js", "groupTitle": "Desk_Configurations" }, { "type": "delete", "url": "/api/integrations/desk/configurations/{id}", "title": "Deletes a Desk Configuration", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/desk/configurations/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteDesk_Configurations", "group": "Desk_Configurations", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intDeskConfiguration/index.js", "groupTitle": "Desk_Configurations" }, { "type": "get", "url": "/api/integrations/desk/configurations", "title": "Gets a list of Desk Configurations", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/desk/configurations -v -u {name}:{password}", "type": "json" } ], "name": "GetDesk_Configurations", "group": "Desk_Configurations", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/integrations/desk/configurations?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/integrations/desk/configurations?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/integrations/desk/configurations?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/integrations/desk/configurations?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/integrations/desk/configurations?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/intDeskConfiguration/index.js", "groupTitle": "Desk_Configurations" }, { "type": "get", "url": "/api/integrations/desk/configurations/{id}", "title": "Gets a single Desk Configuration", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/desk/configurations/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowDesk_Configurations", "group": "Desk_Configurations", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intDeskConfiguration/index.js", "groupTitle": "Desk_Configurations" }, { "type": "get", "url": "/api/integrations/desk/configurations/{id}/descriptions", "title": "Gets configurations descriptions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/desk/configurations/{id}/descriptions -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getDescriptions", "group": "Desk_Configurations", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intDeskConfiguration/index.js", "groupTitle": "Desk_Configurations" }, { "type": "get", "url": "/api/integrations/desk/configurations/{id}/fields", "title": "Gets configurations fields", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/desk/configurations/{id}/fields -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getFields", "group": "Desk_Configurations", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intDeskConfiguration/index.js", "groupTitle": "Desk_Configurations" }, { "type": "get", "url": "/api/integrations/desk/configurations/{id}/subjects", "title": "Gets configurations subjects", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/desk/configurations/{id}/subjects -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getSubjects", "group": "Desk_Configurations", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intDeskConfiguration/index.js", "groupTitle": "Desk_Configurations" }, { "type": "get", "url": "/api/integrations/desk/configurations/{id}/tags", "title": "Gets configurations tags", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/desk/configurations/{id}/tags -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getTags", "group": "Desk_Configurations", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intDeskConfiguration/index.js", "groupTitle": "Desk_Configurations" }, { "type": "post", "url": "/api/integrations/desk/configurations/{id}/tags", "title": "Sets new tags", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/desk/configurations/{id}/tags -d '{\"ids\": [1,12]}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "setTags", "group": "Desk_Configurations", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intDeskConfiguration/index.js", "groupTitle": "Desk_Configurations" }, { "type": "put", "url": "/api/integrations/desk/configurations/{id}", "title": "Update an existing Desk Configuration", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/desk/configurations/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateDesk_Configurations", "group": "Desk_Configurations", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intDeskConfiguration/index.js", "groupTitle": "Desk_Configurations" }, { "type": "post", "url": "/api/integrations/desk/fields", "title": "Creates a new Desk Field", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/desk/fields -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateDesk_Fields", "group": "Desk_Fields", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "allowedValues": [ "\"string\"", "\"variable\"", "\"customVariable\"", "\"keyValue\"" ], "optional": true, "field": "type", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "content", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "key", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"string\"", "\"variable\"", "\"customVariable\"" ], "optional": true, "field": "keyType", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "keyContent", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "idField", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "nameField", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "customField", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "variableName", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intDeskField/index.js", "groupTitle": "Desk_Fields" }, { "type": "delete", "url": "/api/integrations/desk/fields/{id}", "title": "Deletes a Desk Field", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/desk/fields/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteDesk_Fields", "group": "Desk_Fields", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intDeskField/index.js", "groupTitle": "Desk_Fields" }, { "type": "get", "url": "/api/integrations/desk/fields", "title": "Gets a list of Desk Fields", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/desk/fields -v -u {name}:{password}", "type": "json" } ], "name": "GetDesk_Fields", "group": "Desk_Fields", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/integrations/desk/fields?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/integrations/desk/fields?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/integrations/desk/fields?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/integrations/desk/fields?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/integrations/desk/fields?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/intDeskField/index.js", "groupTitle": "Desk_Fields" }, { "type": "get", "url": "/api/integrations/desk/fields/{id}", "title": "Gets a single Desk Field", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/desk/fields/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowDesk_Fields", "group": "Desk_Fields", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intDeskField/index.js", "groupTitle": "Desk_Fields" }, { "type": "put", "url": "/api/integrations/desk/fields/{id}", "title": "Update an existing Desk Field", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/desk/fields/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateDesk_Fields", "group": "Desk_Fields", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intDeskField/index.js", "groupTitle": "Desk_Fields" }, { "type": "post", "url": "/api/fax/accounts", "title": "Creates a new Account", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/accounts -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateAccounts", "group": "Fax_Accounts", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "ecm", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "headerinfo", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "localstationid", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"2400\"", "\"4800\"", "\"7200\"", "\"9600\"", "\"12000\"", "\"14400\"" ], "optional": true, "field": "minrate", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"2400\"", "\"4800\"", "\"7200\"", "\"9600\"", "\"12000\"", "\"14400\"" ], "optional": true, "field": "maxrate", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "modem", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "gateway", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "faxdetect", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "t38timeout", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"SIP\"", "\"IAX\"", "\"DADHI\"", "\"KHOMP\"" ], "optional": true, "field": "tech", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "key", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxAccount/index.js", "groupTitle": "Fax_Accounts" }, { "type": "delete", "url": "/api/fax/accounts/{id}", "title": "Deletes a Account", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/accounts/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteAccounts", "group": "Fax_Accounts", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxAccount/index.js", "groupTitle": "Fax_Accounts" }, { "type": "get", "url": "/api/fax/accounts/describe", "title": "Gets table info about Accounts", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/accounts/describe -v -u {name}:{password}", "type": "json" } ], "name": "DescribeAccounts", "group": "Fax_Accounts", "description": "

Motion will return a HTTP status code 200 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxAccount/index.js", "groupTitle": "Fax_Accounts" }, { "type": "get", "url": "/api/fax/accounts", "title": "Gets a list of Accounts", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/accounts -v -u {name}:{password}", "type": "json" } ], "name": "GetAccounts", "group": "Fax_Accounts", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/fax/accounts?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/fax/accounts?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/fax/accounts?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/fax/accounts?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/fax/accounts?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/faxAccount/index.js", "groupTitle": "Fax_Accounts" }, { "type": "delete", "url": "/api/fax/accounts/{id}/canned_answers", "title": "Removes canned answers from account", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/accounts/{id}/canned_answers?ids=1&ids=2 -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "RemoveAnswers", "group": "Fax_Accounts", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxAccount/index.js", "groupTitle": "Fax_Accounts" }, { "type": "get", "url": "/api/fax/accounts/{id}", "title": "Gets a single Account", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/accounts/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowAccounts", "group": "Fax_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxAccount/index.js", "groupTitle": "Fax_Accounts" }, { "type": "post", "url": "/api/fax/accounts/{id}/canned_answers", "title": "Creates new canned answer", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/accounts/{id}/canned_answers -d '{\"name\": \"vip\"}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addAnswer", "group": "Fax_Accounts", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "key", "description": "" }, { "group": "Body", "type": "Text", "optional": false, "field": "value", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxAccount/index.js", "groupTitle": "Fax_Accounts" }, { "type": "post", "url": "/api/fax/accounts/addaccountapplications", "title": "Creates new account and applications", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/accounts/addaccountapplications -d '[{\"name\": \"name\", \"...\": \"...\"}]' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addApplications", "group": "Fax_Accounts", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "Integer", "optional": false, "field": "priority", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "app", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "appdata", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "interval", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxAccount/index.js", "groupTitle": "Fax_Accounts" }, { "type": "post", "url": "/api/fax/accounts/{id}/applications", "title": "Creates new applications", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/accounts/{id}/applications -d '[{\"app\": \"queue\", \"...\": \"...\"}]' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addApplications", "group": "Fax_Accounts", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "Integer", "optional": false, "field": "priority", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "app", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "appdata", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "interval", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxAccount/index.js", "groupTitle": "Fax_Accounts" }, { "type": "post", "url": "/api/fax/accounts/{id}/dispositions", "title": "Creates new disposition", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/accounts/{id}/dispositions -d '{\"name\": \"Satisfied\"}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addDisposition", "group": "Fax_Accounts", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "name", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxAccount/index.js", "groupTitle": "Fax_Accounts" }, { "type": "post", "url": "/api/fax/accounts/{id}/dispositions", "title": "Creates many dispositions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/accounts/{id}/dispositions -d '[{\"name\": \"Satisfied\"}]' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addDispositions", "group": "Fax_Accounts", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "name", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxAccount/index.js", "groupTitle": "Fax_Accounts" }, { "type": "post", "url": "/api/fax/accounts/{id}/interactions", "title": "Creates new interactions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/accounts/{id}/interactions -d '[{\"host\": \"host\", \"username\": \"username\", \"password\": \"password\", \"...\": \"...\"}]' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addInteraction", "group": "Fax_Accounts", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "Boolean", "optional": true, "field": "closed", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "closedAt", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "disposition", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "note", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "read1stAt", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "fax", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"in\"", "\"out\"" ], "optional": false, "field": "firstMsgDirection", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "lastMsgAt", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"in\"", "\"out\"" ], "optional": false, "field": "lastMsgDirection", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxAccount/index.js", "groupTitle": "Fax_Accounts" }, { "type": "get", "url": "/api/fax/accounts/{id}/canned_answers", "title": "Gets account canned answers", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/accounts/{id}/canned_answers -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getAnswers", "group": "Fax_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxAccount/index.js", "groupTitle": "Fax_Accounts" }, { "type": "get", "url": "/api/fax/accounts/{id}/applications", "title": "Gets account pplications", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/accounts/{id}/applications -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getApplications", "group": "Fax_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxAccount/index.js", "groupTitle": "Fax_Accounts" }, { "type": "get", "url": "/api/fax/accounts/{id}/dispositions", "title": "Gets account dispositions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/accounts/{id}/dispositions -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getDispositions", "group": "Fax_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxAccount/index.js", "groupTitle": "Fax_Accounts" }, { "type": "get", "url": "/api/fax/accounts/{id}/interactions", "title": "Gets account interactions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/accounts/{id}/interactions -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getInteraction", "group": "Fax_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxAccount/index.js", "groupTitle": "Fax_Accounts" }, { "type": "get", "url": "/api/fax/accounts/{id}/messages", "title": "Gets account messages", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/accounts/{id}/messages -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getMessages", "group": "Fax_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxAccount/index.js", "groupTitle": "Fax_Accounts" }, { "type": "post", "url": "/api/fax/accounts/{id}/send", "title": "Send new fax", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/accounts/{id}/send -d '{from: '\"John Doe\" <123456>'}' -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "sendFax", "group": "Fax_Accounts", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxAccount/index.js", "groupTitle": "Fax_Accounts" }, { "type": "put", "url": "/api/fax/accounts/{id}", "title": "Update an existing Account", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/accounts/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateAccounts", "group": "Fax_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxAccount/index.js", "groupTitle": "Fax_Accounts" }, { "type": "post", "url": "/api/fax/accounts/updateaccountapplications", "title": "Update account and applications", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/accounts/updateaccountapplications -d '[{\"name\": \"name\", \"...\": \"...\"}]' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "updateApplications", "group": "Fax_Accounts", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "Integer", "optional": false, "field": "priority", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "app", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "appdata", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "interval", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxAccount/index.js", "groupTitle": "Fax_Accounts" }, { "type": "post", "url": "/api/fax/applications", "title": "Creates a new Application", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/applications -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateApplications", "group": "Fax_Applications", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "Integer", "optional": false, "field": "priority", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "app", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "appdata", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "interval", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxApplication/index.js", "groupTitle": "Fax_Applications" }, { "type": "delete", "url": "/api/fax/applications/{id}", "title": "Deletes a Application", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/applications/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteApplications", "group": "Fax_Applications", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxApplication/index.js", "groupTitle": "Fax_Applications" }, { "type": "get", "url": "/api/fax/applications", "title": "Gets a list of Applications", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/applications -v -u {name}:{password}", "type": "json" } ], "name": "GetApplications", "group": "Fax_Applications", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/fax/applications?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/fax/applications?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/fax/applications?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/fax/applications?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/fax/applications?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/faxApplication/index.js", "groupTitle": "Fax_Applications" }, { "type": "get", "url": "/api/fax/applications/{id}", "title": "Gets a single Application", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/applications/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowApplications", "group": "Fax_Applications", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxApplication/index.js", "groupTitle": "Fax_Applications" }, { "type": "put", "url": "/api/fax/applications/{id}", "title": "Update an existing Application", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/applications/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateApplications", "group": "Fax_Applications", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxApplication/index.js", "groupTitle": "Fax_Applications" }, { "type": "post", "url": "/api/fax/dispositions", "title": "Creates a new Disposition", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/dispositions -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateDispositions", "group": "Fax_Dispositions", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "name", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxDisposition/index.js", "groupTitle": "Fax_Dispositions" }, { "type": "delete", "url": "/api/fax/dispositions/{id}", "title": "Deletes a Disposition", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/dispositions/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteDispositions", "group": "Fax_Dispositions", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxDisposition/index.js", "groupTitle": "Fax_Dispositions" }, { "type": "get", "url": "/api/fax/dispositions/{id}", "title": "Gets a single Disposition", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/dispositions/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowDispositions", "group": "Fax_Dispositions", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxDisposition/index.js", "groupTitle": "Fax_Dispositions" }, { "type": "put", "url": "/api/fax/dispositions/{id}", "title": "Update an existing Disposition", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/dispositions/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateDispositions", "group": "Fax_Dispositions", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxDisposition/index.js", "groupTitle": "Fax_Dispositions" }, { "type": "post", "url": "/api/fax/interactions/{id}/tags", "title": "Add tags to the interaction", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/interaction/{id}/tags -d '{\"ids\": [1,2]}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "AddTags", "group": "Fax_Interactions", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxInteraction/index.js", "groupTitle": "Fax_Interactions" }, { "type": "post", "url": "/api/fax/interactions", "title": "Creates a new Interaction", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/interactions -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateInteractions", "group": "Fax_Interactions", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "Boolean", "optional": true, "field": "closed", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "closedAt", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "disposition", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "note", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "read1stAt", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "fax", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"in\"", "\"out\"" ], "optional": false, "field": "firstMsgDirection", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "lastMsgAt", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"in\"", "\"out\"" ], "optional": false, "field": "lastMsgDirection", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxInteraction/index.js", "groupTitle": "Fax_Interactions" }, { "type": "delete", "url": "/api/fax/interactions/{id}", "title": "Deletes a Interaction", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/interactions/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteInteractions", "group": "Fax_Interactions", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxInteraction/index.js", "groupTitle": "Fax_Interactions" }, { "type": "get", "url": "/api/fax/interactions/describe", "title": "Gets table info about Interactions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/interactions/describe -v -u {name}:{password}", "type": "json" } ], "name": "DescribeInteractions", "group": "Fax_Interactions", "description": "

Motion will return a HTTP status code 200 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxInteraction/index.js", "groupTitle": "Fax_Interactions" }, { "type": "get", "url": "/api/fax/interactions", "title": "Gets a list of Interactions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/interactions -v -u {name}:{password}", "type": "json" } ], "name": "GetInteractions", "group": "Fax_Interactions", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/fax/interactions?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/fax/interactions?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/fax/interactions?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/fax/interactions?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/fax/interactions?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/faxInteraction/index.js", "groupTitle": "Fax_Interactions" }, { "type": "delete", "url": "/api/fax/interactions/{id}/tags", "title": "Removes tags from interaction", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/interactions/{id}/tags?ids=1&ids=2 -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "RemoveTags", "group": "Fax_Interactions", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxInteraction/index.js", "groupTitle": "Fax_Interactions" }, { "type": "get", "url": "/api/fax/interactions/{id}", "title": "Gets a single Interaction", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/interactions/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowInteractions", "group": "Fax_Interactions", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxInteraction/index.js", "groupTitle": "Fax_Interactions" }, { "type": "post", "url": "/api/fax/interactions/{id}/messages", "title": "Creates new messages", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/interactions/{id}/messages -d '[{\"to\": \"+3901119886500\", \"...\": \"...\"}]' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addMessage", "group": "Fax_Interactions", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "Text", "optional": false, "field": "body", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "read", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"in\"", "\"out\"" ], "optional": false, "field": "direction", "description": "" }, { "group": "Body", "type": "Text", "optional": true, "field": "failMessage", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "readAt", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxInteraction/index.js", "groupTitle": "Fax_Interactions" }, { "type": "get", "url": "/api/fax/interactions/{id}/messages", "title": "Gets interaction messages", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/interactions/{id}/messages -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getMessages", "group": "Fax_Interactions", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxInteraction/index.js", "groupTitle": "Fax_Interactions" }, { "type": "put", "url": "/api/fax/interactions/{id}", "title": "Update an existing Interaction", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/interactions/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateInteractions", "group": "Fax_Interactions", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxInteraction/index.js", "groupTitle": "Fax_Interactions" }, { "type": "delete", "url": "/api/fax/messages/{id}", "title": "Deletes a Message", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/messages/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteMessages", "group": "Fax_Messages", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxMessage/index.js", "groupTitle": "Fax_Messages" }, { "type": "get", "url": "/api/fax/messages/describe", "title": "Gets table info about Messages", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/messages/describe -v -u {name}:{password}", "type": "json" } ], "name": "DescribeMessages", "group": "Fax_Messages", "description": "

Motion will return a HTTP status code 200 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxMessage/index.js", "groupTitle": "Fax_Messages" }, { "type": "get", "url": "/api/fax/messages", "title": "Gets a list of Messages", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/messages -v -u {name}:{password}", "type": "json" } ], "name": "GetMessages", "group": "Fax_Messages", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/fax/messages?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/fax/messages?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/fax/messages?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/fax/messages?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/fax/messages?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/faxMessage/index.js", "groupTitle": "Fax_Messages" }, { "type": "get", "url": "/api/fax/messages/{id}", "title": "Gets a single Message", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/messages/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowMessages", "group": "Fax_Messages", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxMessage/index.js", "groupTitle": "Fax_Messages" }, { "type": "put", "url": "/api/fax/messages/{id}/accept", "title": "Accepts message", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/messages/{id}/accept \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "acceptMessage", "group": "Fax_Messages", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxMessage/index.js", "groupTitle": "Fax_Messages" }, { "type": "put", "url": "/api/fax/messages/{id}/reject", "title": "Rejects message", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/messages/{id}/reject \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "rejectMessage", "group": "Fax_Messages", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxMessage/index.js", "groupTitle": "Fax_Messages" }, { "type": "post", "url": "/api/fax/messages", "title": "Create message and send Fax", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/messages/{id}/reject \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "rejectMessage", "group": "Fax_Messages", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxMessage/index.js", "groupTitle": "Fax_Messages" }, { "type": "put", "url": "/api/fax/messages/{id}", "title": "Update an existing Message", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/messages/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateMessages", "group": "Fax_Messages", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxMessage/index.js", "groupTitle": "Fax_Messages" }, { "type": "post", "url": "/api/fax/reports/queue", "title": "Creates a new Fax Queue Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/reports/queue -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateFax_Queue_Reports", "group": "Fax_Queue_Reports", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "uniqueid", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "from", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "joinAt", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "leaveAt", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "acceptAt", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "exitAt", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "reason", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxQueueReport/index.js", "groupTitle": "Fax_Queue_Reports" }, { "type": "delete", "url": "/api/fax/reports/queue/{id}", "title": "Deletes a Fax Queue Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/reports/queue/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteFax_Queue_Reports", "group": "Fax_Queue_Reports", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxQueueReport/index.js", "groupTitle": "Fax_Queue_Reports" }, { "type": "get", "url": "/api/fax/reports/queue/describe", "title": "Gets table info about Fax Queue Reports", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/reports/queue/describe -v -u {name}:{password}", "type": "json" } ], "name": "DescribeFax_Queue_Reports", "group": "Fax_Queue_Reports", "description": "

Motion will return a HTTP status code 200 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxQueueReport/index.js", "groupTitle": "Fax_Queue_Reports" }, { "type": "get", "url": "/api/fax/reports/queue", "title": "Gets a list of Fax Queue Reports", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/reports/queue -v -u {name}:{password}", "type": "json" } ], "name": "GetFax_Queue_Reports", "group": "Fax_Queue_Reports", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/fax/reports/queue?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/fax/reports/queue?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/fax/reports/queue?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/fax/reports/queue?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/fax/reports/queue?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/faxQueueReport/index.js", "groupTitle": "Fax_Queue_Reports" }, { "type": "get", "url": "/api/fax/reports/queue/{id}", "title": "Gets a single Fax Queue Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/reports/queue/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowFax_Queue_Reports", "group": "Fax_Queue_Reports", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxQueueReport/index.js", "groupTitle": "Fax_Queue_Reports" }, { "type": "put", "url": "/api/fax/reports/queue/{id}", "title": "Update an existing Fax Queue Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/reports/queue/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateFax_Queue_Reports", "group": "Fax_Queue_Reports", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxQueueReport/index.js", "groupTitle": "Fax_Queue_Reports" }, { "type": "post", "url": "/api/fax/queues/{id}/users", "title": "Add agents to a queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/queues/{id}/users -d '{\"ids\": [1,2], \"penalty\": 2}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "AddAgents", "group": "Fax_Queues", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxQueue/index.js", "groupTitle": "Fax_Queues" }, { "type": "post", "url": "/api/fax/queues/{id}/teams", "title": "Add teams to a queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/queues/{id}/teams -d '{\"ids\": [1,2]}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "AddTeams", "group": "Fax_Queues", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxQueue/index.js", "groupTitle": "Fax_Queues" }, { "type": "post", "url": "/api/fax/queues", "title": "Creates a new Queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/queues -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateQueues", "group": "Fax_Queues", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" }, { "group": "Body", "type": "Integer", "optional": false, "field": "timeout", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"rrmemory\"", "\"beepall\"", "\"roundrobin\"" ], "optional": false, "field": "strategy", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "lastAgent", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxQueue/index.js", "groupTitle": "Fax_Queues" }, { "type": "delete", "url": "/api/fax/queues/{id}", "title": "Deletes a Queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/queues/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteQueues", "group": "Fax_Queues", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxQueue/index.js", "groupTitle": "Fax_Queues" }, { "type": "get", "url": "/api/fax/queues/describe", "title": "Gets table info about Queues", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/queues/describe -v -u {name}:{password}", "type": "json" } ], "name": "DescribeQueues", "group": "Fax_Queues", "description": "

Motion will return a HTTP status code 200 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxQueue/index.js", "groupTitle": "Fax_Queues" }, { "type": "get", "url": "/api/fax/queues/{id}/users", "title": "Gets queue agents", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/queues/{id}/users -v -u {name}:{password} -X POST", "type": "json" } ], "name": "GetAgents", "group": "Fax_Queues", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxQueue/index.js", "groupTitle": "Fax_Queues" }, { "type": "get", "url": "/api/fax/queues/{id}/members", "title": "GetMembers", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/queues/{id}/members -v -u {name}:{password}", "type": "json" } ], "name": "GetMembers", "group": "Fax_Queues", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxQueue/index.js", "groupTitle": "Fax_Queues" }, { "type": "get", "url": "/api/fax/queues", "title": "Gets a list of Queues", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/queues -v -u {name}:{password}", "type": "json" } ], "name": "GetQueues", "group": "Fax_Queues", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/fax/queues?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/fax/queues?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/fax/queues?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/fax/queues?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/fax/queues?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/faxQueue/index.js", "groupTitle": "Fax_Queues" }, { "type": "get", "url": "/api/fax/queues/{id}/teams", "title": "Gets queues list", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/queues/{id}/teams -v -u {name}:{password}", "type": "json" } ], "name": "GetTeams", "group": "Fax_Queues", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxQueue/index.js", "groupTitle": "Fax_Queues" }, { "type": "delete", "url": "/api/fax/queues/{id}/users", "title": "Removes agents from a queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/queues/{id}/users?ids=1&ids=2 -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "RemoveAgents", "group": "Fax_Queues", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxQueue/index.js", "groupTitle": "Fax_Queues" }, { "type": "get", "url": "/api/fax/queues/{id}", "title": "Gets a single Queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/queues/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowQueues", "group": "Fax_Queues", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxQueue/index.js", "groupTitle": "Fax_Queues" }, { "type": "put", "url": "/api/fax/queues/{id}", "title": "Update an existing Queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/queues/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateQueues", "group": "Fax_Queues", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxQueue/index.js", "groupTitle": "Fax_Queues" }, { "type": "post", "url": "/api/integrations/freshdesk/accounts", "title": "Creates a new Freshdesk Account", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/freshdesk/accounts -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateFreshdesk_Accounts", "group": "Freshdesk_Accounts", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": true, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "username", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "apiKey", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "remoteUri", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "serverUrl", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intFreshdeskAccount/index.js", "groupTitle": "Freshdesk_Accounts" }, { "type": "delete", "url": "/api/integrations/freshdesk/accounts/{id}", "title": "Deletes a Freshdesk Account", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/freshdesk/accounts/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteFreshdesk_Accounts", "group": "Freshdesk_Accounts", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intFreshdeskAccount/index.js", "groupTitle": "Freshdesk_Accounts" }, { "type": "get", "url": "/api/integrations/freshdesk/accounts", "title": "Gets a list of Freshdesk Accounts", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/freshdesk/accounts -v -u {name}:{password}", "type": "json" } ], "name": "GetFreshdesk_Accounts", "group": "Freshdesk_Accounts", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/integrations/freshdesk/accounts?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/integrations/freshdesk/accounts?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/integrations/freshdesk/accounts?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/integrations/freshdesk/accounts?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/integrations/freshdesk/accounts?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/intFreshdeskAccount/index.js", "groupTitle": "Freshdesk_Accounts" }, { "type": "get", "url": "/api/integrations/freshdesk/accounts/{id}", "title": "Gets a single Freshdesk Account", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/freshdesk/accounts/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowFreshdesk_Accounts", "group": "Freshdesk_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intFreshdeskAccount/index.js", "groupTitle": "Freshdesk_Accounts" }, { "type": "post", "url": "/api/integrations/freshdesk/accounts/{id}/configurations", "title": "Creates new configuration", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/freshdesk/accounts/{id}/configurations -d '{\"name\": \"conf1\"}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addConfiguration", "group": "Freshdesk_Accounts", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intFreshdeskAccount/index.js", "groupTitle": "Freshdesk_Accounts" }, { "type": "get", "url": "/api/integrations/freshdesk/accounts/{id}/configurations", "title": "Gets account configurations", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/freshdesk/accounts/{id}/configurations -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getConfigurations", "group": "Freshdesk_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intFreshdeskAccount/index.js", "groupTitle": "Freshdesk_Accounts" }, { "type": "get", "url": "/api/integrations/freshdesk/accounts/{id}/fields", "title": "Gets account fields", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/freshdesk/accounts/{id}/fields -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getFields", "group": "Freshdesk_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intFreshdeskAccount/index.js", "groupTitle": "Freshdesk_Accounts" }, { "type": "put", "url": "/api/integrations/freshdesk/accounts/{id}", "title": "Update an existing Freshdesk Account", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/freshdesk/accounts/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateFreshdesk_Accounts", "group": "Freshdesk_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intFreshdeskAccount/index.js", "groupTitle": "Freshdesk_Accounts" }, { "type": "post", "url": "/api/integrations/freshdesk/configurations", "title": "Creates a new Freshdesk Configuration", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/freshdesk/configurations -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateFreshdesk_Configurations", "group": "Freshdesk_Configurations", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": true, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intFreshdeskConfiguration/index.js", "groupTitle": "Freshdesk_Configurations" }, { "type": "delete", "url": "/api/integrations/freshdesk/configurations/{id}", "title": "Deletes a Freshdesk Configuration", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/freshdesk/configurations/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteFreshdesk_Configurations", "group": "Freshdesk_Configurations", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intFreshdeskConfiguration/index.js", "groupTitle": "Freshdesk_Configurations" }, { "type": "get", "url": "/api/integrations/freshdesk/configurations", "title": "Gets a list of Freshdesk Configurations", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/freshdesk/configurations -v -u {name}:{password}", "type": "json" } ], "name": "GetFreshdesk_Configurations", "group": "Freshdesk_Configurations", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/integrations/freshdesk/configurations?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/integrations/freshdesk/configurations?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/integrations/freshdesk/configurations?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/integrations/freshdesk/configurations?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/integrations/freshdesk/configurations?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/intFreshdeskConfiguration/index.js", "groupTitle": "Freshdesk_Configurations" }, { "type": "get", "url": "/api/integrations/freshdesk/configurations/{id}", "title": "Gets a single Freshdesk Configuration", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/freshdesk/configurations/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowFreshdesk_Configurations", "group": "Freshdesk_Configurations", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intFreshdeskConfiguration/index.js", "groupTitle": "Freshdesk_Configurations" }, { "type": "get", "url": "/api/integrations/freshdesk/configurations/{id}/descriptions", "title": "Gets configurations descriptions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/freshdesk/configurations/{id}/descriptions -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getDescriptions", "group": "Freshdesk_Configurations", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intFreshdeskConfiguration/index.js", "groupTitle": "Freshdesk_Configurations" }, { "type": "get", "url": "/api/integrations/freshdesk/configurations/{id}/fields", "title": "Gets configurations fields", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/freshdesk/configurations/{id}/fields -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getFields", "group": "Freshdesk_Configurations", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intFreshdeskConfiguration/index.js", "groupTitle": "Freshdesk_Configurations" }, { "type": "get", "url": "/api/integrations/freshdesk/configurations/{id}/subjects", "title": "Gets configurations subjects", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/freshdesk/configurations/{id}/subjects -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getSubjects", "group": "Freshdesk_Configurations", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intFreshdeskConfiguration/index.js", "groupTitle": "Freshdesk_Configurations" }, { "type": "get", "url": "/api/integrations/freshdesk/configurations/{id}/tags", "title": "Gets configurations tags", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/freshdesk/configurations/{id}/tags -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getTags", "group": "Freshdesk_Configurations", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intFreshdeskConfiguration/index.js", "groupTitle": "Freshdesk_Configurations" }, { "type": "post", "url": "/api/integrations/freshdesk/configurations/{id}/tags", "title": "Sets new tags", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/freshdesk/configurations/{id}/tags -d '{\"ids\": [1,12]}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "setTags", "group": "Freshdesk_Configurations", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intFreshdeskConfiguration/index.js", "groupTitle": "Freshdesk_Configurations" }, { "type": "put", "url": "/api/integrations/freshdesk/configurations/{id}", "title": "Update an existing Freshdesk Configuration", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/freshdesk/configurations/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateFreshdesk_Configurations", "group": "Freshdesk_Configurations", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intFreshdeskConfiguration/index.js", "groupTitle": "Freshdesk_Configurations" }, { "type": "post", "url": "/api/integrations/freshdesk/fields", "title": "Creates a new Freshdesk Field", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/freshdesk/fields -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateFreshdesk_Fields", "group": "Freshdesk_Fields", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "allowedValues": [ "\"string\"", "\"variable\"", "\"customVariable\"", "\"keyValue\"" ], "optional": true, "field": "type", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "content", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "key", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"string\"", "\"variable\"", "\"customVariable\"" ], "optional": true, "field": "keyType", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "keyContent", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "idField", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "nameField", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "customField", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "variableName", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intFreshdeskField/index.js", "groupTitle": "Freshdesk_Fields" }, { "type": "delete", "url": "/api/integrations/freshdesk/fields/{id}", "title": "Deletes a Freshdesk Field", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/freshdesk/fields/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteFreshdesk_Fields", "group": "Freshdesk_Fields", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intFreshdeskField/index.js", "groupTitle": "Freshdesk_Fields" }, { "type": "get", "url": "/api/integrations/freshdesk/fields", "title": "Gets a list of Freshdesk Fields", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/freshdesk/fields -v -u {name}:{password}", "type": "json" } ], "name": "GetFreshdesk_Fields", "group": "Freshdesk_Fields", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/integrations/freshdesk/fields?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/integrations/freshdesk/fields?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/integrations/freshdesk/fields?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/integrations/freshdesk/fields?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/integrations/freshdesk/fields?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/intFreshdeskField/index.js", "groupTitle": "Freshdesk_Fields" }, { "type": "get", "url": "/api/integrations/freshdesk/fields/{id}", "title": "Gets a single Freshdesk Field", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/freshdesk/fields/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowFreshdesk_Fields", "group": "Freshdesk_Fields", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intFreshdeskField/index.js", "groupTitle": "Freshdesk_Fields" }, { "type": "put", "url": "/api/integrations/freshdesk/fields/{id}", "title": "Update an existing Freshdesk Field", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/freshdesk/fields/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateFreshdesk_Fields", "group": "Freshdesk_Fields", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intFreshdeskField/index.js", "groupTitle": "Freshdesk_Fields" }, { "type": "post", "url": "/api/campaigns/{id}/blacklists", "title": "Add blacklists to an IVR campaign", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/campaigns/{id}/blacklists -d '{\"ids\": [1,2]}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "AddBlackLists", "group": "IVR_Campaigns", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/campaign/index.js", "groupTitle": "IVR_Campaigns" }, { "type": "post", "url": "/api/campaigns/{id}/lists", "title": "Add lists to an IVR campaign", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/campaigns/{id}/lists -d '{\"ids\": [1,2]}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "AddLists", "group": "IVR_Campaigns", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/campaign/index.js", "groupTitle": "IVR_Campaigns" }, { "type": "post", "url": "/api/campaigns", "title": "Creates a new IVR Campaign", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/campaigns -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateIVR_Campaigns", "group": "IVR_Campaigns", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "name", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"ivr\"" ], "optional": false, "field": "type", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "active", "description": "

Active/Disactive Campaign

" }, { "group": "Body", "type": "Integer", "optional": true, "field": "limitCalls", "description": "

Max 200 calls.

" }, { "group": "Body", "type": "String", "optional": true, "field": "dialOriginateCallerIdName", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "dialOriginateCallerIdNumber", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "dialOriginateTimeout", "description": "

Originate Timeout Seconds (min:1, max:999)

" }, { "group": "Body", "type": "Integer", "optional": true, "field": "dialCongestionMaxRetry", "description": "

#Congestion Retry (min:1, max:999)

" }, { "group": "Body", "type": "Integer", "optional": true, "field": "dialCongestionRetryFrequency", "description": "

Congestion Retry Frequency Minutes (min:1, max:99999)

" }, { "group": "Body", "type": "Integer", "optional": true, "field": "dialBusyMaxRetry", "description": "

#Busy Retry (min:1, max:999)

" }, { "group": "Body", "type": "Integer", "optional": true, "field": "dialBusyRetryFrequency", "description": "

Busy Retry Frequency Minutes (min:1, max:99999)

" }, { "group": "Body", "type": "Integer", "optional": true, "field": "dialNoAnswerMaxRetry", "description": "

#NoAnswer Retry (min:1, max:999)

" }, { "group": "Body", "type": "Integer", "optional": true, "field": "dialNoAnswerRetryFrequency", "description": "

NoAnswer Retry Frequency Minutes (min:1, max:99999)

" }, { "group": "Body", "type": "Integer", "optional": true, "field": "dialGlobalMaxRetry", "description": "

#Global Max Retry (min:1, max:999)

" }, { "group": "Body", "type": "String", "optional": true, "field": "dialTimezone", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "dialGlobalInterval", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"always\"", "\"never\"", "\"onlyIfOpen\"" ], "optional": true, "field": "dialCheckDuplicateType", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "dialAMDActive", "description": "

Active/Disactive AMD

" }, { "group": "Body", "type": "Integer", "optional": true, "field": "dialAMDInitialSilence", "description": "

#AMD Initial Silence

" }, { "group": "Body", "type": "Integer", "optional": true, "field": "dialAMDGreeting", "description": "

#AMD Greeting

" }, { "group": "Body", "type": "Integer", "optional": true, "field": "dialAMDAfterGreetingSilence", "description": "

#AMD After Greeting Silence

" }, { "group": "Body", "type": "Integer", "optional": true, "field": "dialAMDTotalAnalysisTime", "description": "

#AMD Total Analysis Time

" }, { "group": "Body", "type": "Integer", "optional": true, "field": "dialAMDMinWordLength", "description": "

#AMD Min Word Length

" }, { "group": "Body", "type": "Integer", "optional": true, "field": "dialAMDBetweenWordsSilence", "description": "

#AMD Between Words Silence

" }, { "group": "Body", "type": "Integer", "optional": true, "field": "dialAMDMaximumNumberOfWords", "description": "

#AMD Maximum Number Of Words

" }, { "group": "Body", "type": "Integer", "optional": true, "field": "dialAMDSilenceThreshold", "description": "

#AMD Silence Threshold (min:0, max:32767)

" }, { "group": "Body", "type": "Integer", "optional": true, "field": "dialAMDMaximumWordLength", "description": "

#AMD Maximum Word Length

" }, { "group": "Body", "type": "String", "allowedValues": [ "\"DESC\"", "\"ASC\"" ], "optional": true, "field": "dialOrderByScheduledAt", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/campaign/index.js", "groupTitle": "IVR_Campaigns" }, { "type": "delete", "url": "/api/campaigns/{id}", "title": "Deletes a IVR Campaign", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/campaigns/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteIVR_Campaigns", "group": "IVR_Campaigns", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/campaign/index.js", "groupTitle": "IVR_Campaigns" }, { "type": "get", "url": "/api/campaigns/{id}/blacklists", "title": "Get IVR campaign blacklists", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/campaigns/{id}/blacklists -v -u {name}:{password} -X GET", "type": "json" } ], "name": "GetBlackLists", "group": "IVR_Campaigns", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/campaign/index.js", "groupTitle": "IVR_Campaigns" }, { "type": "get", "url": "/api/campaigns/{id}/finals", "title": "Gets IVR campaign hopper finals", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/campaigns/{id}/hopper_finals -v -u {name}:{password} -X GET", "type": "json" } ], "name": "GetHopperFinals", "group": "IVR_Campaigns", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/campaign/index.js", "groupTitle": "IVR_Campaigns" }, { "type": "get", "url": "/api/campaigns/{id}/hopper_histories", "title": "Gets IVR campaign hopper histories", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/campaigns/{id}/hopper_histories -v -u {name}:{password} -X GET", "type": "json" } ], "name": "GetHopperHistories", "group": "IVR_Campaigns", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/campaign/index.js", "groupTitle": "IVR_Campaigns" }, { "type": "get", "url": "/api/campaigns/{id}/hoppers", "title": "Gets IVR campaign hoppers", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/campaigns/{id}/hoppers -v -u {name}:{password} -X GET", "type": "json" } ], "name": "GetHoppers", "group": "IVR_Campaigns", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/campaign/index.js", "groupTitle": "IVR_Campaigns" }, { "type": "get", "url": "/api/campaigns", "title": "Gets a list of IVR Campaigns", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/campaigns -v -u {name}:{password}", "type": "json" } ], "name": "GetIVR_Campaigns", "group": "IVR_Campaigns", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/campaigns?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/campaigns?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/campaigns?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/campaigns?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/campaigns?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/campaign/index.js", "groupTitle": "IVR_Campaigns" }, { "type": "get", "url": "/api/campaigns/{id}/lists", "title": "Get IVR campaign lists", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/campaigns/{id}/lists -v -u {name}:{password} -X GET", "type": "json" } ], "name": "GetLists", "group": "IVR_Campaigns", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/campaign/index.js", "groupTitle": "IVR_Campaigns" }, { "type": "delete", "url": "/api/campaigns/{id}/blacklists", "title": "Remove blacklists from an IVR Campaign", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/campaigns/{id}/blacklists?ids=1&ids=2 -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "RemoveBlackLists", "group": "IVR_Campaigns", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/campaign/index.js", "groupTitle": "IVR_Campaigns" }, { "type": "delete", "url": "/api/campaigns/{id}/lists", "title": "Remove lists from an IVR Campaign", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/campaigns/{id}/lists?ids=1&ids=2 -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "RemoveLists", "group": "IVR_Campaigns", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/campaign/index.js", "groupTitle": "IVR_Campaigns" }, { "type": "get", "url": "/api/campaigns/{id}", "title": "Gets a single IVR Campaign", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/campaigns/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowIVR_Campaigns", "group": "IVR_Campaigns", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/campaign/index.js", "groupTitle": "IVR_Campaigns" }, { "type": "get", "url": "/api/campaigns/{id}/blacks", "title": "Gets IVR campaign hopper blacks", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/campaigns/{id}/hopper_black -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getHopperBlacks", "group": "IVR_Campaigns", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/campaign/index.js", "groupTitle": "IVR_Campaigns" }, { "type": "put", "url": "/api/campaigns/{id}", "title": "Update an existing IVR Campaign", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/campaigns/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateIVR_Campaigns", "group": "IVR_Campaigns", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/campaign/index.js", "groupTitle": "IVR_Campaigns" }, { "type": "post", "url": "/api/integrations/reports", "title": "Creates a new Integration Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/reports -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateIntegration_Reports", "group": "Integration_Reports", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": true, "field": "integration", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "eventChannel", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "exitStatus", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "ticketId", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "integrationId", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "contacts", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "uniqueid", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "calleridnum", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "calleridname", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "queue", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "interface", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "membername", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "agentcalledAt", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "agentconnectAt", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "holdtime", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "agentcomplete", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "agentcompleteAt", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "talktime", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "agentacw", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "acwtime", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "reason", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "agentringnoanswer", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "agentringnoanswerAt", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "agentdump", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "agentdumpAt", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "lastevent", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "channel", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "channelstate", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "channelstatedesc", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "connectedlinenum", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "connectedlinename", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "language", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "accountcode", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "context", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "exten", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "priority", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "destchannel", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "destchannelstate", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "destchannelstatedesc", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "destcalleridnum", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "destcalleridname", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "destconnectedlinenum", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "destconnectedlinename", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "destlanguage", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "destaccountcode", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "destcontext", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "destexten", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "destpriority", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "destuniqueid", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "messageId", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "inReplyTo", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "subject", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "from", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "to", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "cc", "description": "" }, { "group": "Body", "type": "Text", "optional": true, "field": "attachment", "description": "" }, { "group": "Body", "type": "Text", "optional": true, "field": "html", "description": "" }, { "group": "Body", "type": "Text", "optional": true, "field": "text", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"SENT\"", "\"SENDING\"", "\"RECEIVED\"", "\"FAILED\"" ], "optional": true, "field": "status", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "url", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "app", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "appdata", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "projectId", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/integrationReport/index.js", "groupTitle": "Integration_Reports" }, { "type": "delete", "url": "/api/integrations/reports/{id}", "title": "Deletes a Integration Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/reports/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteIntegration_Reports", "group": "Integration_Reports", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/integrationReport/index.js", "groupTitle": "Integration_Reports" }, { "type": "get", "url": "/api/integrations/reports/describe", "title": "Gets table info about Integration Reports", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/reports/describe -v -u {name}:{password}", "type": "json" } ], "name": "DescribeIntegration_Reports", "group": "Integration_Reports", "description": "

Motion will return a HTTP status code 200 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/integrationReport/index.js", "groupTitle": "Integration_Reports" }, { "type": "get", "url": "/api/integrations/reports", "title": "Gets a list of Integration Reports", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/reports -v -u {name}:{password}", "type": "json" } ], "name": "GetIntegration_Reports", "group": "Integration_Reports", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/integrations/reports?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/integrations/reports?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/integrations/reports?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/integrations/reports?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/integrations/reports?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/integrationReport/index.js", "groupTitle": "Integration_Reports" }, { "type": "get", "url": "/api/integrations/reports/{id}", "title": "Gets a single Integration Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/reports/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowIntegration_Reports", "group": "Integration_Reports", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/integrationReport/index.js", "groupTitle": "Integration_Reports" }, { "type": "put", "url": "/api/integrations/reports/{id}", "title": "Update an existing Integration Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/reports/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateIntegration_Reports", "group": "Integration_Reports", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/integrationReport/index.js", "groupTitle": "Integration_Reports" }, { "type": "post", "url": "/api/intervals", "title": "Creates a new Interval", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/intervals -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateIntervals", "group": "Intervals", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": true, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "interval", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/interval/index.js", "groupTitle": "Intervals" }, { "type": "delete", "url": "/api/intervals/{id}", "title": "Deletes a Interval", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/intervals/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteIntervals", "group": "Intervals", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/interval/index.js", "groupTitle": "Intervals" }, { "type": "get", "url": "/api/intervals", "title": "Gets a list of Intervals", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/intervals -v -u {name}:{password}", "type": "json" } ], "name": "GetIntervals", "group": "Intervals", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/intervals?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/intervals?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/intervals?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/intervals?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/intervals?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/interval/index.js", "groupTitle": "Intervals" }, { "type": "get", "url": "/api/intervals/{id}", "title": "Gets a single Interval", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/intervals/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowIntervals", "group": "Intervals", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/interval/index.js", "groupTitle": "Intervals" }, { "type": "post", "url": "/api/intervals/{id}/sub_intervals", "title": "Creates a new sub interval", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/intervals/{id}/sub_intervals -d '{\"interval\": \"00:00-08:30,mon-fri,*,*\"}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addInterval", "group": "Intervals", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/interval/index.js", "groupTitle": "Intervals" }, { "type": "post", "url": "/api/intervals/{id}/sub_intervals/create_many", "title": "Create new sub intervals set", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/intervals/{id}/sub_intervals -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addIntervals", "group": "Intervals", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/interval/index.js", "groupTitle": "Intervals" }, { "type": "get", "url": "/api/intervals/{id}/sub_intervals", "title": "Get sub intervals set", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/intervals/{id}/sub_intervals -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getIntervals", "group": "Intervals", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/interval/index.js", "groupTitle": "Intervals" }, { "type": "put", "url": "/api/intervals/{id}", "title": "Update an existing Interval", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/intervals/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateIntervals", "group": "Intervals", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/interval/index.js", "groupTitle": "Intervals" }, { "type": "post", "url": "/api/jira", "title": "Creates a new issue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/jira -d '{\"key\": \"Bug\", \"description\": \"I can't do it!\"}' \\\n -H \"Content-Type: application/json\" -X POST -v -u {name}:{password}", "type": "json" } ], "name": "Creates_Issue", "group": "Issue", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "allowedValues": [ "\"Bug\"" ], "optional": true, "field": "issuetype", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "summary", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "description", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/jira/index.js", "groupTitle": "Issue" }, { "type": "post", "url": "/api/jscripty/answers/reports", "title": "Creates a new Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/jscripty/answers/reports -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateReports", "group": "JscriptyAnswerReport", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": true, "field": "question", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "answer", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "membername", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "projectname", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "queue", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "uniqueid", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "calleridname", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "calleridnum", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "questionId", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/jscriptyAnswerReport/index.js", "groupTitle": "JscriptyAnswerReport" }, { "type": "delete", "url": "/api/jscripty/answers/reports/{id}", "title": "Deletes a Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/jscripty/answers/reports/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteReports", "group": "JscriptyAnswerReport", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/jscriptyAnswerReport/index.js", "groupTitle": "JscriptyAnswerReport" }, { "type": "get", "url": "/api/jscripty/answers/reports/describe", "title": "Gets table info about Reports", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/jscripty/answers/reports/describe -v -u {name}:{password}", "type": "json" } ], "name": "DescribeReports", "group": "JscriptyAnswerReport", "description": "

Motion will return a HTTP status code 200 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/jscriptyAnswerReport/index.js", "groupTitle": "JscriptyAnswerReport" }, { "type": "get", "url": "/api/jscripty/answers/reports", "title": "Gets a list of Reports", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/jscripty/answers/reports -v -u {name}:{password}", "type": "json" } ], "name": "GetReports", "group": "JscriptyAnswerReport", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/jscripty/answers/reports?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/jscripty/answers/reports?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/jscripty/answers/reports?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/jscripty/answers/reports?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/jscripty/answers/reports?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/jscriptyAnswerReport/index.js", "groupTitle": "JscriptyAnswerReport" }, { "type": "get", "url": "/api/jscripty/answers/reports/{id}", "title": "Gets a single Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/jscripty/answers/reports/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowReports", "group": "JscriptyAnswerReport", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/jscriptyAnswerReport/index.js", "groupTitle": "JscriptyAnswerReport" }, { "type": "put", "url": "/api/jscripty/answers/reports/{id}", "title": "Update an existing Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/jscripty/answers/reports/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateReports", "group": "JscriptyAnswerReport", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/jscriptyAnswerReport/index.js", "groupTitle": "JscriptyAnswerReport" }, { "type": "post", "url": "/api/jscripty/questions/reports", "title": "Creates a new Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/jscripty/questions/reports -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateReports", "group": "JscriptyQuestionReport", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": true, "field": "question", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "answer", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "membername", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "projectname", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "queue", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "uniqueid", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "calleridname", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "calleridnum", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "questionId", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/jscriptyQuestionReport/index.js", "groupTitle": "JscriptyQuestionReport" }, { "type": "delete", "url": "/api/jscripty/questions/reports/{id}", "title": "Deletes a Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/jscripty/questions/reports/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteReports", "group": "JscriptyQuestionReport", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/jscriptyQuestionReport/index.js", "groupTitle": "JscriptyQuestionReport" }, { "type": "get", "url": "/api/jscripty/questions/reports/describe", "title": "Gets table info about Reports", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/jscripty/questions/reports/describe -v -u {name}:{password}", "type": "json" } ], "name": "DescribeReports", "group": "JscriptyQuestionReport", "description": "

Motion will return a HTTP status code 200 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/jscriptyQuestionReport/index.js", "groupTitle": "JscriptyQuestionReport" }, { "type": "get", "url": "/api/jscripty/questions/reports", "title": "Gets a list of Reports", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/jscripty/questions/reports -v -u {name}:{password}", "type": "json" } ], "name": "GetReports", "group": "JscriptyQuestionReport", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/jscripty/questions/reports?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/jscripty/questions/reports?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/jscripty/questions/reports?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/jscripty/questions/reports?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/jscripty/questions/reports?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/jscriptyQuestionReport/index.js", "groupTitle": "JscriptyQuestionReport" }, { "type": "get", "url": "/api/jscripty/questions/reports/{id}", "title": "Gets a single Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/jscripty/questions/reports/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowReports", "group": "JscriptyQuestionReport", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/jscriptyQuestionReport/index.js", "groupTitle": "JscriptyQuestionReport" }, { "type": "put", "url": "/api/jscripty/questions/reports/{id}", "title": "Update an existing Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/jscripty/questions/reports/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateReports", "group": "JscriptyQuestionReport", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/jscriptyQuestionReport/index.js", "groupTitle": "JscriptyQuestionReport" }, { "type": "post", "url": "/api/jscripty/sessions/reports", "title": "Creates a new Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/jscripty/sessions/reports -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateReports", "group": "JscriptySessionReport", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": true, "field": "starttime", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "endtime", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "membername", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "projectname", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "queue", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "uniqueid", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "calleridname", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "calleridnum", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "completed", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/jscriptySessionReport/index.js", "groupTitle": "JscriptySessionReport" }, { "type": "delete", "url": "/api/jscripty/sessions/reports/{id}", "title": "Deletes a Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/jscripty/sessions/reports/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteReports", "group": "JscriptySessionReport", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/jscriptySessionReport/index.js", "groupTitle": "JscriptySessionReport" }, { "type": "get", "url": "/api/jscripty/sessions/reports/describe", "title": "Gets table info about Reports", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/jscripty/sessions/reports/describe -v -u {name}:{password}", "type": "json" } ], "name": "DescribeReports", "group": "JscriptySessionReport", "description": "

Motion will return a HTTP status code 200 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/jscriptySessionReport/index.js", "groupTitle": "JscriptySessionReport" }, { "type": "get", "url": "/api/jscripty/sessions/reports", "title": "Gets a list of Reports", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/jscripty/sessions/reports -v -u {name}:{password}", "type": "json" } ], "name": "GetReports", "group": "JscriptySessionReport", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/jscripty/sessions/reports?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/jscripty/sessions/reports?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/jscripty/sessions/reports?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/jscripty/sessions/reports?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/jscripty/sessions/reports?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/jscriptySessionReport/index.js", "groupTitle": "JscriptySessionReport" }, { "type": "get", "url": "/api/jscripty/sessions/reports/{id}", "title": "Gets a single Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/jscripty/sessions/reports/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowReports", "group": "JscriptySessionReport", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/jscriptySessionReport/index.js", "groupTitle": "JscriptySessionReport" }, { "type": "get", "url": "/api/jscripty/sessions/reports/{id}/questions", "title": "Gets Jscripty Session questions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/jscripty/sessions/reports/{id}/questions -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getQuestions", "group": "JscriptySessionReport", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/jscriptySessionReport/index.js", "groupTitle": "JscriptySessionReport" }, { "type": "put", "url": "/api/jscripty/sessions/reports/{id}", "title": "Update an existing Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/jscripty/sessions/reports/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateReports", "group": "JscriptySessionReport", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/jscriptySessionReport/index.js", "groupTitle": "JscriptySessionReport" }, { "type": "post", "url": "/api/jscripty/projects/clone", "title": "Clone an existing Project", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/jscripty/projects/clone -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CloneProjects", "group": "Jscripty_Projects", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/jscriptyProject/index.js", "groupTitle": "Jscripty_Projects" }, { "type": "post", "url": "/api/jscripty/projects", "title": "Creates a new Project", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/jscripty/projects -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateProjects", "group": "Jscripty_Projects", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": true, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" }, { "group": "Body", "type": "Text", "optional": true, "field": "formData", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "enableUncompleteSave", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/jscriptyProject/index.js", "groupTitle": "Jscripty_Projects" }, { "type": "delete", "url": "/api/jscripty/projects/{id}", "title": "Deletes a Project", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/jscripty/projects/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteProjects", "group": "Jscripty_Projects", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/jscriptyProject/index.js", "groupTitle": "Jscripty_Projects" }, { "type": "get", "url": "/api/jscripty/projects", "title": "Gets a list of Projects", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/jscripty/projects -v -u {name}:{password}", "type": "json" } ], "name": "GetProjects", "group": "Jscripty_Projects", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/jscripty/projects?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/jscripty/projects?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/jscripty/projects?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/jscripty/projects?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/jscripty/projects?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/jscriptyProject/index.js", "groupTitle": "Jscripty_Projects" }, { "type": "get", "url": "/api/jscripty/projects/{id}", "title": "Gets a single Project", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/jscripty/projects/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowProjects", "group": "Jscripty_Projects", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/jscriptyProject/index.js", "groupTitle": "Jscripty_Projects" }, { "type": "get", "url": "/api/jscripty/projects/{id}/answers", "title": "Gets jscripty project answers", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/jscripty/projects/{id}/answers -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getAnswers", "group": "Jscripty_Projects", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/jscriptyProject/index.js", "groupTitle": "Jscripty_Projects" }, { "type": "get", "url": "/api/jscripty/projects/{id}/sessions", "title": "Gets jscripty project sessions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/jscripty/projects/{id}/sessions -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getSessions", "group": "Jscripty_Projects", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/jscriptyProject/index.js", "groupTitle": "Jscripty_Projects" }, { "type": "get", "url": "/api/jscripty/projects/{id}/summary", "title": "Gets jscripty project summary", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/jscripty/projects/{id}/summary -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getSummary", "group": "Jscripty_Projects", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/jscriptyProject/index.js", "groupTitle": "Jscripty_Projects" }, { "type": "put", "url": "/api/jscripty/projects/{id}", "title": "Update an existing Project", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/jscripty/projects/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateProjects", "group": "Jscripty_Projects", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/jscriptyProject/index.js", "groupTitle": "Jscripty_Projects" }, { "type": "get", "url": "/api/license", "title": "Gets License Info", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/license -v -u {name}:{password} -X GET", "type": "json" } ], "name": "index", "group": "License", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/license/index.js", "groupTitle": "License" }, { "type": "put", "url": "/api/license/{id}", "title": "Update an existing License", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/license/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateLiense", "group": "License", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/license/index.js", "groupTitle": "License" }, { "type": "post", "url": "/api/mail/accounts/{id}/in_servers", "title": "Creates a new IMAP server", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/accounts/{id}/in_servers -d '{\"host\": \"host\", \"username\": \"username\", \"password\": \"password\", \"...\": \"...\"}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "AddImap", "group": "Mail_Accounts", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "host", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "authentication", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "user", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "password", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "port", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "tls", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "mailbox", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "connTimeout", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "authTimeout", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "service", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailAccount/index.js", "groupTitle": "Mail_Accounts" }, { "type": "post", "url": "/api/mail/accounts/{id}/out_servers", "title": "Creates a new SMTP server", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/accounts/{id}/out_servers -d '{\"host\": \"host\", \"username\": \"username\", \"password\": \"password\", \"...\": \"...\"}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "AddSmtp", "group": "Mail_Accounts", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "host", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "user", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "pass", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "port", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "secure", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "service", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "authentication", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailAccount/index.js", "groupTitle": "Mail_Accounts" }, { "type": "delete", "url": "/api/mail/accounts/{id}", "title": "Deletes a Account", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/accounts/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteAccounts", "group": "Mail_Accounts", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailAccount/index.js", "groupTitle": "Mail_Accounts" }, { "type": "get", "url": "/api/mail/accounts/describe", "title": "Gets table info about Accounts", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/accounts/describe -v -u {name}:{password}", "type": "json" } ], "name": "DescribeAccounts", "group": "Mail_Accounts", "description": "

Motion will return a HTTP status code 200 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailAccount/index.js", "groupTitle": "Mail_Accounts" }, { "type": "get", "url": "/api/mail/accounts", "title": "Gets a list of Accounts", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/accounts -v -u {name}:{password}", "type": "json" } ], "name": "GetAccounts", "group": "Mail_Accounts", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/mail/accounts?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/mail/accounts?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/mail/accounts?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/mail/accounts?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/mail/accounts?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/mailAccount/index.js", "groupTitle": "Mail_Accounts" }, { "type": "get", "url": "/api/mail/accounts/{id}/in_servers", "title": "Gets account IMAP server", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/accounts/{id}/in_servers -v -u {name}:{password} -X GET", "type": "json" } ], "name": "GetImap", "group": "Mail_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailAccount/index.js", "groupTitle": "Mail_Accounts" }, { "type": "get", "url": "/api/mail/accounts/{id}/out_servers", "title": "Gets account SMTP server", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/accounts/{id}/out_servers -v -u {name}:{password} -X GET", "type": "json" } ], "name": "GetSmtp", "group": "Mail_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailAccount/index.js", "groupTitle": "Mail_Accounts" }, { "type": "delete", "url": "/api/mail/accounts/{id}/in_servers", "title": "Removes IMAP server from an account", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/accounts/{id}/in_servers -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "RemoveImmap", "group": "Mail_Accounts", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailAccount/index.js", "groupTitle": "Mail_Accounts" }, { "type": "delete", "url": "/api/mail/accounts/{id}/out_servers", "title": "Removes SMTP server from an account", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/accounts/{id}/out_servers -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "RemoveSmtp", "group": "Mail_Accounts", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailAccount/index.js", "groupTitle": "Mail_Accounts" }, { "type": "get", "url": "/api/mail/accounts/{id}", "title": "Gets a single Account", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/accounts/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowAccounts", "group": "Mail_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailAccount/index.js", "groupTitle": "Mail_Accounts" }, { "type": "put", "url": "/api/mail/messages/{id}/accept", "title": "Accepts message", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/messages/{id}/accept \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "acceptMessage", "group": "Mail_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailMessage/index.js", "groupTitle": "Mail_Accounts" }, { "type": "post", "url": "/api/mail/accounts/{id}/canned_answers", "title": "Creates new canned answer", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/accounts/{id}/canned_answers -d '{\"name\": \"vip\"}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addAnswer", "group": "Mail_Accounts", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "key", "description": "" }, { "group": "Body", "type": "Text", "optional": false, "field": "value", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailAccount/index.js", "groupTitle": "Mail_Accounts" }, { "type": "post", "url": "/api/mail/accounts/{id}/applications", "title": "Creates new applications", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/accounts/{id}/applications -d '[{\"app\": \"queue\", \"...\": \"...\"}]' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addApplications", "group": "Mail_Accounts", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "Integer", "optional": false, "field": "priority", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "app", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "appdata", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "interval", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailAccount/index.js", "groupTitle": "Mail_Accounts" }, { "type": "post", "url": "/api/mail/accounts/{id}/dispositions", "title": "Creates new disposition", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/accounts/{id}/dispositions -d '{\"name\": \"vip\"}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addDisposition", "group": "Mail_Accounts", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "name", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailAccount/index.js", "groupTitle": "Mail_Accounts" }, { "type": "post", "url": "/api/mail/accounts/{id}/dispositions", "title": "Creates many dispositions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/accounts/{id}/dispositions -d '[{\"name\": \"vip\"}]' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addDispositions", "group": "Mail_Accounts", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "name", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailAccount/index.js", "groupTitle": "Mail_Accounts" }, { "type": "post", "url": "/api/mail/accounts/{id}/interactions", "title": "Creates new interactions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/accounts/{id}/interactions -d '[{\"subject\": \"My printer is on fire!\", \"...\": \"...\"}]' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addInteraction", "group": "Mail_Accounts", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "Boolean", "optional": true, "field": "closed", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "closedAt", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "disposition", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "note", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "inReplyTo", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "to", "description": "" }, { "group": "Body", "type": "Text", "optional": true, "field": "cc", "description": "" }, { "group": "Body", "type": "Text", "optional": true, "field": "subject", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "attach", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "read1stAt", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "substatus", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "substatusAt", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"in\"", "\"out\"" ], "optional": false, "field": "firstMsgDirection", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "lastMsgAt", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"in\"", "\"out\"" ], "optional": false, "field": "lastMsgDirection", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailAccount/index.js", "groupTitle": "Mail_Accounts" }, { "type": "post", "url": "/api/mail/accounts", "title": "Create a mail account", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/accounts \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "create", "group": "Mail_Accounts", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailAccount/index.js", "groupTitle": "Mail_Accounts" }, { "type": "get", "url": "/api/mail/accounts/{id}/canned_answers", "title": "Gets account canned answers", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/accounts/{id}/canned_answers -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getAnswers", "group": "Mail_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailAccount/index.js", "groupTitle": "Mail_Accounts" }, { "type": "get", "url": "/api/mail/accounts/{id}/applications", "title": "Gets account applications", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/accounts/{id}/applications -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getApplications", "group": "Mail_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailAccount/index.js", "groupTitle": "Mail_Accounts" }, { "type": "get", "url": "/api/mail/accounts/{id}/dispositions", "title": "Gets account dispositions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/accounts/{id}/dispositions -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getDispositions", "group": "Mail_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailAccount/index.js", "groupTitle": "Mail_Accounts" }, { "type": "get", "url": "/api/mail/accounts/{id}/interactions", "title": "Gets account interactions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/accounts/{id}/interactions -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getInteraction", "group": "Mail_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailAccount/index.js", "groupTitle": "Mail_Accounts" }, { "type": "get", "url": "/api/mail/accounts/{id}/messages", "title": "Gets account messages", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/accounts/{id}/messages -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getMessages", "group": "Mail_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailAccount/index.js", "groupTitle": "Mail_Accounts" }, { "type": "put", "url": "/api/mail/messages/{id}/reject", "title": "Rejects message", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/messages/{id}/reject \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "rejectMessage", "group": "Mail_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailMessage/index.js", "groupTitle": "Mail_Accounts" }, { "type": "post", "url": "/api/mail/accounts/{id}/send", "title": "Send new mail", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/accounts/{id}/send -d '{from: '\"John Doe\" '}' -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "sendMail", "group": "Mail_Accounts", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailAccount/index.js", "groupTitle": "Mail_Accounts" }, { "type": "put", "url": "/api/mail/accounts/{id}", "title": "Update an existing Account", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/accounts/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateAccounts", "group": "Mail_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailAccount/index.js", "groupTitle": "Mail_Accounts" }, { "type": "get", "url": "/api/mail/accounts/{id}/verify", "title": "Verify mail account", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/accounts/{id}/verify -v -u {name}:{password} -X GET", "type": "json" } ], "name": "verifySmtp", "group": "Mail_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailAccount/index.js", "groupTitle": "Mail_Accounts" }, { "type": "delete", "url": "/api/mail/applications/{id}", "title": "Deletes a Application", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/applications/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteApplications", "group": "Mail_Applications", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailApplication/index.js", "groupTitle": "Mail_Applications" }, { "type": "get", "url": "/api/mail/applications/{id}", "title": "Gets a single Application", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/applications/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowApplications", "group": "Mail_Applications", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailApplication/index.js", "groupTitle": "Mail_Applications" }, { "type": "put", "url": "/api/mail/applications/{id}", "title": "Update an existing Application", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/applications/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateApplications", "group": "Mail_Applications", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailApplication/index.js", "groupTitle": "Mail_Applications" }, { "type": "post", "url": "/api/mail/dispositions", "title": "Creates a new Disposition", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/dispositions -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateDispositions", "group": "Mail_Dispositions", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "name", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailDisposition/index.js", "groupTitle": "Mail_Dispositions" }, { "type": "delete", "url": "/api/mail/dispositions/{id}", "title": "Deletes a Disposition", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/dispositions/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteDispositions", "group": "Mail_Dispositions", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailDisposition/index.js", "groupTitle": "Mail_Dispositions" }, { "type": "get", "url": "/api/mail/dispositions/{id}", "title": "Gets a single Disposition", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/dispositions/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowDispositions", "group": "Mail_Dispositions", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailDisposition/index.js", "groupTitle": "Mail_Dispositions" }, { "type": "put", "url": "/api/mail/dispositions/{id}", "title": "Update an existing Disposition", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/dispositions/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateDispositions", "group": "Mail_Dispositions", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailDisposition/index.js", "groupTitle": "Mail_Dispositions" }, { "type": "post", "url": "/api/mail/interactions/{id}/tags", "title": "Add tags to the interaction", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/interaction/{id}/tags -d '{\"ids\": [1,2]}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "AddTags", "group": "Mail_Interactions", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailInteraction/index.js", "groupTitle": "Mail_Interactions" }, { "type": "post", "url": "/api/mail/interactions", "title": "Creates a new Interaction", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/interactions -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateInteractions", "group": "Mail_Interactions", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "Boolean", "optional": true, "field": "closed", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "closedAt", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "disposition", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "note", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "inReplyTo", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "to", "description": "" }, { "group": "Body", "type": "Text", "optional": true, "field": "cc", "description": "" }, { "group": "Body", "type": "Text", "optional": true, "field": "subject", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "attach", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "read1stAt", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "substatus", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "substatusAt", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"in\"", "\"out\"" ], "optional": false, "field": "firstMsgDirection", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "lastMsgAt", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"in\"", "\"out\"" ], "optional": false, "field": "lastMsgDirection", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailInteraction/index.js", "groupTitle": "Mail_Interactions" }, { "type": "delete", "url": "/api/mail/interactions/{id}", "title": "Deletes a Interaction", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/interactions/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteInteractions", "group": "Mail_Interactions", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailInteraction/index.js", "groupTitle": "Mail_Interactions" }, { "type": "get", "url": "/api/mail/interactions/describe", "title": "Gets table info about Interactions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/interactions/describe -v -u {name}:{password}", "type": "json" } ], "name": "DescribeInteractions", "group": "Mail_Interactions", "description": "

Motion will return a HTTP status code 200 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailInteraction/index.js", "groupTitle": "Mail_Interactions" }, { "type": "get", "url": "/api/mail/interactions", "title": "Gets a list of Interactions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/interactions -v -u {name}:{password}", "type": "json" } ], "name": "GetInteractions", "group": "Mail_Interactions", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/mail/interactions?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/mail/interactions?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/mail/interactions?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/mail/interactions?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/mail/interactions?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/mailInteraction/index.js", "groupTitle": "Mail_Interactions" }, { "type": "delete", "url": "/api/mail/interactions/{id}/tags", "title": "Removes tags from interaction", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/interactions/{id}/tags?ids=1&ids=2 -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "RemoveTags", "group": "Mail_Interactions", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailInteraction/index.js", "groupTitle": "Mail_Interactions" }, { "type": "get", "url": "/api/mail/interactions/{id}", "title": "Gets a single Interaction", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/interactions/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowInteractions", "group": "Mail_Interactions", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailInteraction/index.js", "groupTitle": "Mail_Interactions" }, { "type": "post", "url": "/api/mail/interactions/{id}/messages", "title": "Creates new message", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/interactions/{id}/messages -d '[{\"to\": \"sales@xcally.com\", \"...\": \"...\"}]' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addMessage", "group": "Mail_Interactions", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "Text", "optional": false, "field": "body", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "read", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"in\"", "\"out\"" ], "optional": false, "field": "direction", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "messageId", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "from", "description": "" }, { "group": "Body", "type": "Text", "optional": true, "field": "to", "description": "" }, { "group": "Body", "type": "Text", "optional": true, "field": "cc", "description": "" }, { "group": "Body", "type": "Text", "optional": true, "field": "bcc", "description": "" }, { "group": "Body", "type": "Text", "optional": true, "field": "subject", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "sentAt", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "attach", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "secret", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "readAt", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailInteraction/index.js", "groupTitle": "Mail_Interactions" }, { "type": "get", "url": "/api/mail/interactions/{id}/messages", "title": "Gets interaction messages", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/interactions/{id}/messages -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getMessages", "group": "Mail_Interactions", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailInteraction/index.js", "groupTitle": "Mail_Interactions" }, { "type": "put", "url": "/api/mail/interactions/{id}", "title": "Update an existing Interaction", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/interactions/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateInteractions", "group": "Mail_Interactions", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailInteraction/index.js", "groupTitle": "Mail_Interactions" }, { "type": "delete", "url": "/api/mail/messages/{id}", "title": "Deletes a Message", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/messages/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteMessages", "group": "Mail_Messages", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailMessage/index.js", "groupTitle": "Mail_Messages" }, { "type": "get", "url": "/api/mail/messages/describe", "title": "Gets table info about Messages", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/messages/describe -v -u {name}:{password}", "type": "json" } ], "name": "DescribeMessages", "group": "Mail_Messages", "description": "

Motion will return a HTTP status code 200 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailMessage/index.js", "groupTitle": "Mail_Messages" }, { "type": "get", "url": "/api/mail/messages", "title": "Gets a list of Messages", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/messages -v -u {name}:{password}", "type": "json" } ], "name": "GetMessages", "group": "Mail_Messages", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/mail/messages?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/mail/messages?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/mail/messages?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/mail/messages?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/mail/messages?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/mailMessage/index.js", "groupTitle": "Mail_Messages" }, { "type": "get", "url": "/api/mail/messages/{id}", "title": "Gets a single Message", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/messages/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowMessages", "group": "Mail_Messages", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailMessage/index.js", "groupTitle": "Mail_Messages" }, { "type": "post", "url": "/api/mail/messages", "title": "Create a message", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/messages \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "createMessage", "group": "Mail_Messages", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailMessage/index.js", "groupTitle": "Mail_Messages" }, { "type": "put", "url": "/api/mail/messages/{id}", "title": "Update an existing Message", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/messages/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateMessages", "group": "Mail_Messages", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailMessage/index.js", "groupTitle": "Mail_Messages" }, { "type": "post", "url": "/api/mail/reports/queue", "title": "Creates a new Mail Queue Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/reports/queue -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateMail_Queue_Reports", "group": "Mail_Queue_Reports", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "uniqueid", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "from", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "joinAt", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "leaveAt", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "acceptAt", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "exitAt", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "reason", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailQueueReport/index.js", "groupTitle": "Mail_Queue_Reports" }, { "type": "delete", "url": "/api/mail/reports/queue/{id}", "title": "Deletes a Mail Queue Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/reports/queue/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteMail_Queue_Reports", "group": "Mail_Queue_Reports", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailQueueReport/index.js", "groupTitle": "Mail_Queue_Reports" }, { "type": "get", "url": "/api/mail/reports/queue/describe", "title": "Gets table info about Mail Queue Reports", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/reports/queue/describe -v -u {name}:{password}", "type": "json" } ], "name": "DescribeMail_Queue_Reports", "group": "Mail_Queue_Reports", "description": "

Motion will return a HTTP status code 200 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailQueueReport/index.js", "groupTitle": "Mail_Queue_Reports" }, { "type": "get", "url": "/api/mail/reports/queue", "title": "Gets a list of Mail Queue Reports", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/reports/queue -v -u {name}:{password}", "type": "json" } ], "name": "GetMail_Queue_Reports", "group": "Mail_Queue_Reports", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/mail/reports/queue?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/mail/reports/queue?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/mail/reports/queue?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/mail/reports/queue?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/mail/reports/queue?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/mailQueueReport/index.js", "groupTitle": "Mail_Queue_Reports" }, { "type": "get", "url": "/api/mail/reports/queue/{id}", "title": "Gets a single Mail Queue Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/reports/queue/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowMail_Queue_Reports", "group": "Mail_Queue_Reports", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailQueueReport/index.js", "groupTitle": "Mail_Queue_Reports" }, { "type": "put", "url": "/api/mail/reports/queue/{id}", "title": "Update an existing Mail Queue Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/reports/queue/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateMail_Queue_Reports", "group": "Mail_Queue_Reports", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailQueueReport/index.js", "groupTitle": "Mail_Queue_Reports" }, { "type": "post", "url": "/api/mail/queues/{id}/users", "title": "Add agents to a queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/queues/{id}/users -d '{\"ids\": [1,2], \"penalty\": 2}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "AddAgents", "group": "Mail_Queues", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailQueue/index.js", "groupTitle": "Mail_Queues" }, { "type": "post", "url": "/api/mail/queues/{id}/teams", "title": "Add teams to a queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/queues/{id}/teams -d '{\"ids\": [1,2]}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "AddTeams", "group": "Mail_Queues", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailQueue/index.js", "groupTitle": "Mail_Queues" }, { "type": "post", "url": "/api/mail/queues", "title": "Creates a new Queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/queues -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateQueues", "group": "Mail_Queues", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": true, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "timeout", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"rrmemory\"", "\"beepall\"", "\"roundrobin\"" ], "optional": true, "field": "strategy", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailQueue/index.js", "groupTitle": "Mail_Queues" }, { "type": "delete", "url": "/api/mail/queues/{id}", "title": "Deletes a Queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/queues/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteQueues", "group": "Mail_Queues", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailQueue/index.js", "groupTitle": "Mail_Queues" }, { "type": "get", "url": "/api/mail/queues/describe", "title": "Gets table info about Queues", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/queues/describe -v -u {name}:{password}", "type": "json" } ], "name": "DescribeQueues", "group": "Mail_Queues", "description": "

Motion will return a HTTP status code 200 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailQueue/index.js", "groupTitle": "Mail_Queues" }, { "type": "get", "url": "/api/mail/queues/{id}/users", "title": "Gets queue agents", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/queues/{id}/users -v -u {name}:{password} -X POST", "type": "json" } ], "name": "GetAgents", "group": "Mail_Queues", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailQueue/index.js", "groupTitle": "Mail_Queues" }, { "type": "get", "url": "/api/mail/queues/{id}/members", "title": "GetMembers", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/queues/{id}/members -v -u {name}:{password}", "type": "json" } ], "name": "GetMembers", "group": "Mail_Queues", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailQueue/index.js", "groupTitle": "Mail_Queues" }, { "type": "get", "url": "/api/mail/queues", "title": "Gets a list of Queues", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/queues -v -u {name}:{password}", "type": "json" } ], "name": "GetQueues", "group": "Mail_Queues", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/mail/queues?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/mail/queues?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/mail/queues?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/mail/queues?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/mail/queues?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/mailQueue/index.js", "groupTitle": "Mail_Queues" }, { "type": "get", "url": "/api/mail/queues/{id}/teams", "title": "Gets queues list", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/queues/{id}/teams -v -u {name}:{password}", "type": "json" } ], "name": "GetTeams", "group": "Mail_Queues", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailQueue/index.js", "groupTitle": "Mail_Queues" }, { "type": "delete", "url": "/api/mail/queues/{id}/users", "title": "Removes agents from a queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/queues/{id}/users?ids=1&ids=2 -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "RemoveAgents", "group": "Mail_Queues", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailQueue/index.js", "groupTitle": "Mail_Queues" }, { "type": "get", "url": "/api/mail/queues/{id}", "title": "Gets a single Queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/queues/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowQueues", "group": "Mail_Queues", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailQueue/index.js", "groupTitle": "Mail_Queues" }, { "type": "put", "url": "/api/mail/queues/{id}", "title": "Update an existing Queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/queues/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateQueues", "group": "Mail_Queues", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailQueue/index.js", "groupTitle": "Mail_Queues" }, { "type": "post", "url": "/api/mail/out_servers", "title": "Creates a new SMTP", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/out_servers -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateSMTPs", "group": "Mail_SMTP", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "host", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "user", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "pass", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "port", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "secure", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "service", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "authentication", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailServerOut/index.js", "groupTitle": "Mail_SMTP" }, { "type": "delete", "url": "/api/mail/out_servers/{id}", "title": "Deletes a SMTP", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/out_servers/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteSMTPs", "group": "Mail_SMTP", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailServerOut/index.js", "groupTitle": "Mail_SMTP" }, { "type": "get", "url": "/api/mail/out_servers", "title": "Gets a list of SMTPs", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/out_servers -v -u {name}:{password}", "type": "json" } ], "name": "GetSMTPs", "group": "Mail_SMTP", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/mail/out_servers?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/mail/out_servers?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/mail/out_servers?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/mail/out_servers?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/mail/out_servers?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/mailServerOut/index.js", "groupTitle": "Mail_SMTP" }, { "type": "get", "url": "/api/mail/out_servers/{id}", "title": "Gets a single SMTP", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/out_servers/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowSMTPs", "group": "Mail_SMTP", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailServerOut/index.js", "groupTitle": "Mail_SMTP" }, { "type": "put", "url": "/api/mail/out_servers/{id}", "title": "Update an existing SMTP", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/out_servers/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateSMTPs", "group": "Mail_SMTP", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailServerOut/index.js", "groupTitle": "Mail_SMTP" }, { "type": "get", "url": "/api/members/reports/describe", "title": "Gets table info about Member Reports", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/members/reports/describe -v -u {name}:{password}", "type": "json" } ], "name": "DescribeMember_Reports", "group": "Member_Reports", "description": "

Motion will return a HTTP status code 200 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/memberReport/index.js", "groupTitle": "Member_Reports" }, { "type": "get", "url": "/api/members/reports", "title": "Gets a list of Member Reports", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/members/reports -v -u {name}:{password}", "type": "json" } ], "name": "GetMember_Reports", "group": "Member_Reports", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/members/reports?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/members/reports?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/members/reports?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/members/reports?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/members/reports?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/memberReport/index.js", "groupTitle": "Member_Reports" }, { "type": "get", "url": "/api/members/reports/{id}", "title": "Gets a single Member Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/members/reports/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowMember_Reports", "group": "Member_Reports", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/memberReport/index.js", "groupTitle": "Member_Reports" }, { "type": "get", "url": "/api/migrations", "title": "Gets a list of Migrations", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/migrations -v -u {name}:{password}", "type": "json" } ], "name": "GetMigrations", "group": "Migrations", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/migrations?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/migrations?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/migrations?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/migrations?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/migrations?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/migration/index.js", "groupTitle": "Migrations" }, { "type": "post", "url": "/api/voice/networks", "title": "Create a new network", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/networks -v -u {name}:{password} -X POST", "type": "json" } ], "name": "Create", "group": "Networks", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/network/index.js", "groupTitle": "Networks" }, { "type": "delete", "url": "/api/voice/networks/{id}", "title": "Deletes a network", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/networks/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "Delete", "group": "Networks", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/network/index.js", "groupTitle": "Networks" }, { "type": "get", "url": "/api/networks", "title": "Gets a list of Networks", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/networks -v -u {name}:{password}", "type": "json" } ], "name": "GetNetworks", "group": "Networks", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/networks?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/networks?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/networks?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/networks?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/networks?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/network/index.js", "groupTitle": "Networks" }, { "type": "get", "url": "/api/networks/{id}", "title": "Gets a single Network", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/networks/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowNetworks", "group": "Networks", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/network/index.js", "groupTitle": "Networks" }, { "type": "put", "url": "/api/voice/networks/{id}", "title": "Update an existing network", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/networks/{id} -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "Update", "group": "Networks", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/network/index.js", "groupTitle": "Networks" }, { "type": "post", "url": "/api/openchannel/accounts", "title": "Creates a new Account", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/accounts -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateAccounts", "group": "Openchannel_Accounts", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "replyUri", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "key", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelAccount/index.js", "groupTitle": "Openchannel_Accounts" }, { "type": "delete", "url": "/api/openchannel/accounts/{id}", "title": "Deletes a Account", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/accounts/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteAccounts", "group": "Openchannel_Accounts", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelAccount/index.js", "groupTitle": "Openchannel_Accounts" }, { "type": "get", "url": "/api/openchannel/accounts/describe", "title": "Gets table info about Accounts", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/accounts/describe -v -u {name}:{password}", "type": "json" } ], "name": "DescribeAccounts", "group": "Openchannel_Accounts", "description": "

Motion will return a HTTP status code 200 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelAccount/index.js", "groupTitle": "Openchannel_Accounts" }, { "type": "get", "url": "/api/openchannel/accounts", "title": "Gets a list of Accounts", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/accounts -v -u {name}:{password}", "type": "json" } ], "name": "GetAccounts", "group": "Openchannel_Accounts", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/openchannel/accounts?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/openchannel/accounts?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/openchannel/accounts?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/openchannel/accounts?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/openchannel/accounts?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/openchannelAccount/index.js", "groupTitle": "Openchannel_Accounts" }, { "type": "delete", "url": "/api/openchannel/accounts/{id}/canned_answers", "title": "Removes canned answers from account", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/accounts/{id}/canned_answers?ids=1&ids=2 -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "RemoveAnswers", "group": "Openchannel_Accounts", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelAccount/index.js", "groupTitle": "Openchannel_Accounts" }, { "type": "get", "url": "/api/openchannel/accounts/{id}", "title": "Gets a single Account", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/accounts/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowAccounts", "group": "Openchannel_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelAccount/index.js", "groupTitle": "Openchannel_Accounts" }, { "type": "post", "url": "/api/openchannel/accounts/{id}/canned_answers", "title": "Creates new canned answer", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/accounts/{id}/canned_answers -d '{\"name\": \"vip\"}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addAnswer", "group": "Openchannel_Accounts", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "key", "description": "" }, { "group": "Body", "type": "Text", "optional": false, "field": "value", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelAccount/index.js", "groupTitle": "Openchannel_Accounts" }, { "type": "post", "url": "/api/openchannel/accounts/{id}/applications", "title": "Creates new applications", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/accounts/{id}/applications -d '[{\"app\": \"queue\", \"...\": \"...\"}]' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addApplications", "group": "Openchannel_Accounts", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "Integer", "optional": false, "field": "priority", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "app", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "appdata", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "interval", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelAccount/index.js", "groupTitle": "Openchannel_Accounts" }, { "type": "post", "url": "/api/openchannel/accounts/{id}/dispositions", "title": "Creates new disposition", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/accounts/{id}/dispositions -d '{\"name\": \"Satisfied\"}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addDisposition", "group": "Openchannel_Accounts", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "name", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelAccount/index.js", "groupTitle": "Openchannel_Accounts" }, { "type": "post", "url": "/api/openchannel/accounts/{id}/dispositions", "title": "Creates many dispositions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/accounts/{id}/dispositions -d '[{\"name\": \"Satisfied\"}]' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addDispositions", "group": "Openchannel_Accounts", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "name", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelAccount/index.js", "groupTitle": "Openchannel_Accounts" }, { "type": "get", "url": "/api/openchannel/accounts/{id}/canned_answers", "title": "Gets account canned answers", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/accounts/{id}/canned_answers -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getAnswers", "group": "Openchannel_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelAccount/index.js", "groupTitle": "Openchannel_Accounts" }, { "type": "get", "url": "/api/openchannel/accounts/{id}/applications", "title": "Gets account applications", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/accounts/{id}/applications -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getApplications", "group": "Openchannel_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelAccount/index.js", "groupTitle": "Openchannel_Accounts" }, { "type": "get", "url": "/api/openchannel/accounts/{id}/dispositions", "title": "Gets account dispositions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/accounts/{id}/dispositions -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getDispositions", "group": "Openchannel_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelAccount/index.js", "groupTitle": "Openchannel_Accounts" }, { "type": "get", "url": "/api/openchannel/accounts/{id}/interactions", "title": "Gets Openchannel Account Interactions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/accounts/{id}/interactions -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getInteractions", "group": "Openchannel_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelAccount/index.js", "groupTitle": "Openchannel_Accounts" }, { "type": "post", "url": "/api/openchannel/accounts/{id}/notify", "title": "Notify new message", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/accounts/{id}/notify -d '{\"body\": \"hello world\", \"...\": \"...\"}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "notify", "group": "Openchannel_Accounts", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

Follow this link to check the documentation:

https://wiki.xcallymotion.com/display/XMV/New+Channels+Configuration+Steps#NewChannelsConfigurationSteps-BuildyourownChannelservice

", "version": "0.0.0", "filename": "server/api/openchannelAccount/index.js", "groupTitle": "Openchannel_Accounts" }, { "type": "put", "url": "/api/openchannel/accounts/{id}", "title": "Update an existing Account", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/accounts/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateAccounts", "group": "Openchannel_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelAccount/index.js", "groupTitle": "Openchannel_Accounts" }, { "type": "post", "url": "/api/openchannel/applications", "title": "Creates a new Application", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/applications -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateApplications", "group": "Openchannel_Applications", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "Integer", "optional": false, "field": "priority", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "app", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "appdata", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "interval", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelApplication/index.js", "groupTitle": "Openchannel_Applications" }, { "type": "delete", "url": "/api/openchannel/applications/{id}", "title": "Deletes a Application", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/applications/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteApplications", "group": "Openchannel_Applications", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelApplication/index.js", "groupTitle": "Openchannel_Applications" }, { "type": "get", "url": "/api/openchannel/applications", "title": "Gets a list of Applications", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/applications -v -u {name}:{password}", "type": "json" } ], "name": "GetApplications", "group": "Openchannel_Applications", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/openchannel/applications?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/openchannel/applications?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/openchannel/applications?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/openchannel/applications?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/openchannel/applications?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/openchannelApplication/index.js", "groupTitle": "Openchannel_Applications" }, { "type": "get", "url": "/api/openchannel/applications/{id}", "title": "Gets a single Application", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/applications/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowApplications", "group": "Openchannel_Applications", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelApplication/index.js", "groupTitle": "Openchannel_Applications" }, { "type": "put", "url": "/api/openchannel/applications/{id}", "title": "Update an existing Application", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/applications/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateApplications", "group": "Openchannel_Applications", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelApplication/index.js", "groupTitle": "Openchannel_Applications" }, { "type": "post", "url": "/api/openchannel/dispositions", "title": "Creates a new Disposition", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/dispositions -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateDispositions", "group": "Openchannel_Dispositions", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "name", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelDisposition/index.js", "groupTitle": "Openchannel_Dispositions" }, { "type": "delete", "url": "/api/openchannel/dispositions/{id}", "title": "Deletes a Disposition", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/dispositions/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteDispositions", "group": "Openchannel_Dispositions", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelDisposition/index.js", "groupTitle": "Openchannel_Dispositions" }, { "type": "get", "url": "/api/openchannel/dispositions/{id}", "title": "Gets a single Disposition", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/dispositions/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowDispositions", "group": "Openchannel_Dispositions", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelDisposition/index.js", "groupTitle": "Openchannel_Dispositions" }, { "type": "put", "url": "/api/openchannel/dispositions/{id}", "title": "Update an existing Disposition", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/dispositions/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateDispositions", "group": "Openchannel_Dispositions", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelDisposition/index.js", "groupTitle": "Openchannel_Dispositions" }, { "type": "post", "url": "/api/openchannel/interactions/{id}/tags", "title": "Add tags to the interaction", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/interaction/{id}/tags -d '{\"ids\": [1,2]}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "AddTags", "group": "Openchannel_Interactions", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelInteraction/index.js", "groupTitle": "Openchannel_Interactions" }, { "type": "post", "url": "/api/openchannel/interactions", "title": "Creates a new Interaction", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/interactions -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateInteractions", "group": "Openchannel_Interactions", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "Boolean", "optional": true, "field": "closed", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "closedAt", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "disposition", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "note", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "read1stAt", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "threadId", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "externalUrl", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "lastMsgAt", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"in\"", "\"out\"" ], "optional": false, "field": "lastMsgDirection", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelInteraction/index.js", "groupTitle": "Openchannel_Interactions" }, { "type": "delete", "url": "/api/openchannel/interactions/{id}", "title": "Deletes a Interaction", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/interactions/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteInteractions", "group": "Openchannel_Interactions", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelInteraction/index.js", "groupTitle": "Openchannel_Interactions" }, { "type": "get", "url": "/api/openchannel/interactions/describe", "title": "Gets table info about Interactions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/interactions/describe -v -u {name}:{password}", "type": "json" } ], "name": "DescribeInteractions", "group": "Openchannel_Interactions", "description": "

Motion will return a HTTP status code 200 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelInteraction/index.js", "groupTitle": "Openchannel_Interactions" }, { "type": "get", "url": "/api/openchannel/interactions", "title": "Gets a list of Interactions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/interactions -v -u {name}:{password}", "type": "json" } ], "name": "GetInteractions", "group": "Openchannel_Interactions", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/openchannel/interactions?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/openchannel/interactions?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/openchannel/interactions?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/openchannel/interactions?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/openchannel/interactions?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/openchannelInteraction/index.js", "groupTitle": "Openchannel_Interactions" }, { "type": "delete", "url": "/api/mail/accounts/{id}/canned_answers", "title": "Removes canned answers from account", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/accounts/{id}/canned_answers?ids=1&ids=2 -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "RemoveAnswers", "group": "Openchannel_Interactions", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailAccount/index.js", "groupTitle": "Openchannel_Interactions" }, { "type": "delete", "url": "/api/openchannel/interactions/{id}/tags", "title": "Removes tags from interaction", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/interactions/{id}/tags?ids=1&ids=2 -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "RemoveTags", "group": "Openchannel_Interactions", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelInteraction/index.js", "groupTitle": "Openchannel_Interactions" }, { "type": "get", "url": "/api/openchannel/interactions/{id}", "title": "Gets a single Interaction", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/interactions/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowInteractions", "group": "Openchannel_Interactions", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelInteraction/index.js", "groupTitle": "Openchannel_Interactions" }, { "type": "post", "url": "/api/openchannel/interactions/{id}/messages", "title": "Creates new messages", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/interactions/{id}/messages -d '[{\"to\": \"+3901119886500\", \"...\": \"...\"}]' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addMessage", "group": "Openchannel_Interactions", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "Text", "optional": false, "field": "body", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "read", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "secret", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"in\"", "\"out\"" ], "optional": false, "field": "direction", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "readAt", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelInteraction/index.js", "groupTitle": "Openchannel_Interactions" }, { "type": "get", "url": "/api/openchannel/interactions/{id}/messages", "title": "Gets interaction messages", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/interactions/{id}/messages -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getMessages", "group": "Openchannel_Interactions", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelInteraction/index.js", "groupTitle": "Openchannel_Interactions" }, { "type": "put", "url": "/api/openchannel/interactions/{id}", "title": "Update an existing Interaction", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/interactions/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateInteractions", "group": "Openchannel_Interactions", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelInteraction/index.js", "groupTitle": "Openchannel_Interactions" }, { "type": "post", "url": "/api/openchannel/messages", "title": "Creates a new Message", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/messages -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateMessages", "group": "Openchannel_Messages", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "Text", "optional": false, "field": "body", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "read", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "secret", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"in\"", "\"out\"" ], "optional": false, "field": "direction", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "readAt", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelMessage/index.js", "groupTitle": "Openchannel_Messages" }, { "type": "delete", "url": "/api/openchannel/messages/{id}", "title": "Deletes a Message", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/messages/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteMessages", "group": "Openchannel_Messages", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelMessage/index.js", "groupTitle": "Openchannel_Messages" }, { "type": "get", "url": "/api/openchannel/messages/describe", "title": "Gets table info about Messages", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/messages/describe -v -u {name}:{password}", "type": "json" } ], "name": "DescribeMessages", "group": "Openchannel_Messages", "description": "

Motion will return a HTTP status code 200 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelMessage/index.js", "groupTitle": "Openchannel_Messages" }, { "type": "get", "url": "/api/openchannel/messages", "title": "Gets a list of Messages", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/messages -v -u {name}:{password}", "type": "json" } ], "name": "GetMessages", "group": "Openchannel_Messages", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/openchannel/messages?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/openchannel/messages?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/openchannel/messages?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/openchannel/messages?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/openchannel/messages?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/openchannelMessage/index.js", "groupTitle": "Openchannel_Messages" }, { "type": "get", "url": "/api/openchannel/messages/{id}", "title": "Gets a single Message", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/messages/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowMessages", "group": "Openchannel_Messages", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelMessage/index.js", "groupTitle": "Openchannel_Messages" }, { "type": "put", "url": "/api/openchannel/messages/{id}/accept", "title": "Accepts message", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/messages/{id}/accept \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "acceptMessage", "group": "Openchannel_Messages", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelMessage/index.js", "groupTitle": "Openchannel_Messages" }, { "type": "put", "url": "/api/openchannel/messages/{id}/reject", "title": "Rejects message", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/messages/{id}/reject \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "rejectMessage", "group": "Openchannel_Messages", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelMessage/index.js", "groupTitle": "Openchannel_Messages" }, { "type": "put", "url": "/api/openchannel/messages/{id}", "title": "Update an existing Message", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/messages/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateMessages", "group": "Openchannel_Messages", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelMessage/index.js", "groupTitle": "Openchannel_Messages" }, { "type": "post", "url": "/api/openchannel/reports/queue", "title": "Creates a new Openchannel Queue Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/reports/queue -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateOpenchannel_Queue_Reports", "group": "Openchannel_Queue_Reports", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "uniqueid", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "from", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "joinAt", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "leaveAt", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "acceptAt", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "exitAt", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "reason", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelQueueReport/index.js", "groupTitle": "Openchannel_Queue_Reports" }, { "type": "delete", "url": "/api/openchannel/reports/queue/{id}", "title": "Deletes a Openchannel Queue Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/reports/queue/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteOpenchannel_Queue_Reports", "group": "Openchannel_Queue_Reports", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelQueueReport/index.js", "groupTitle": "Openchannel_Queue_Reports" }, { "type": "get", "url": "/api/openchannel/reports/queue/describe", "title": "Gets table info about Openchannel Queue Reports", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/reports/queue/describe -v -u {name}:{password}", "type": "json" } ], "name": "DescribeOpenchannel_Queue_Reports", "group": "Openchannel_Queue_Reports", "description": "

Motion will return a HTTP status code 200 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelQueueReport/index.js", "groupTitle": "Openchannel_Queue_Reports" }, { "type": "get", "url": "/api/openchannel/reports/queue", "title": "Gets a list of Openchannel Queue Reports", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/reports/queue -v -u {name}:{password}", "type": "json" } ], "name": "GetOpenchannel_Queue_Reports", "group": "Openchannel_Queue_Reports", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/openchannel/reports/queue?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/openchannel/reports/queue?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/openchannel/reports/queue?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/openchannel/reports/queue?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/openchannel/reports/queue?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/openchannelQueueReport/index.js", "groupTitle": "Openchannel_Queue_Reports" }, { "type": "get", "url": "/api/openchannel/reports/queue/{id}", "title": "Gets a single Openchannel Queue Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/reports/queue/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowOpenchannel_Queue_Reports", "group": "Openchannel_Queue_Reports", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelQueueReport/index.js", "groupTitle": "Openchannel_Queue_Reports" }, { "type": "put", "url": "/api/openchannel/reports/queue/{id}", "title": "Update an existing Openchannel Queue Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/reports/queue/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateOpenchannel_Queue_Reports", "group": "Openchannel_Queue_Reports", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelQueueReport/index.js", "groupTitle": "Openchannel_Queue_Reports" }, { "type": "post", "url": "/api/openchannel/queues/{id}/users", "title": "Add agents to a queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/queues/{id}/users -d '{\"ids\": [1,2], \"penalty\": 2}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "AddAgents", "group": "Openchannel_Queues", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelQueue/index.js", "groupTitle": "Openchannel_Queues" }, { "type": "post", "url": "/api/openchannel/queues/{id}/teams", "title": "Add teams to a queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/queues/{id}/teams -d '{\"ids\": [1,2]}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "AddTeams", "group": "Openchannel_Queues", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelQueue/index.js", "groupTitle": "Openchannel_Queues" }, { "type": "post", "url": "/api/openchannel/queues", "title": "Creates a new Queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/queues -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateQueues", "group": "Openchannel_Queues", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": true, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "timeout", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"rrmemory\"", "\"beepall\"", "\"roundrobin\"" ], "optional": true, "field": "strategy", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelQueue/index.js", "groupTitle": "Openchannel_Queues" }, { "type": "delete", "url": "/api/openchannel/queues/{id}", "title": "Deletes a Queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/queues/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteQueues", "group": "Openchannel_Queues", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelQueue/index.js", "groupTitle": "Openchannel_Queues" }, { "type": "get", "url": "/api/openchannel/queues/describe", "title": "Gets table info about Queues", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/queues/describe -v -u {name}:{password}", "type": "json" } ], "name": "DescribeQueues", "group": "Openchannel_Queues", "description": "

Motion will return a HTTP status code 200 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelQueue/index.js", "groupTitle": "Openchannel_Queues" }, { "type": "get", "url": "/api/openchannel/queues/{id}/users", "title": "Gets queue agents", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/queues/{id}/users -v -u {name}:{password} -X POST", "type": "json" } ], "name": "GetAgents", "group": "Openchannel_Queues", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelQueue/index.js", "groupTitle": "Openchannel_Queues" }, { "type": "get", "url": "/api/openchannel/queues/{id}/members", "title": "GetMembers", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/queues/{id}/members -v -u {name}:{password}", "type": "json" } ], "name": "GetMembers", "group": "Openchannel_Queues", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelQueue/index.js", "groupTitle": "Openchannel_Queues" }, { "type": "get", "url": "/api/openchannel/queues", "title": "Gets a list of Queues", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/queues -v -u {name}:{password}", "type": "json" } ], "name": "GetQueues", "group": "Openchannel_Queues", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/openchannel/queues?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/openchannel/queues?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/openchannel/queues?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/openchannel/queues?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/openchannel/queues?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/openchannelQueue/index.js", "groupTitle": "Openchannel_Queues" }, { "type": "get", "url": "/api/openchannel/queues/{id}/teams", "title": "Gets queues list", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/queues/{id}/teams -v -u {name}:{password}", "type": "json" } ], "name": "GetTeams", "group": "Openchannel_Queues", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelQueue/index.js", "groupTitle": "Openchannel_Queues" }, { "type": "delete", "url": "/api/openchannel/queues/{id}/users", "title": "Removes agents from a queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/queues/{id}/users?ids=1&ids=2 -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "RemoveAgents", "group": "Openchannel_Queues", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelQueue/index.js", "groupTitle": "Openchannel_Queues" }, { "type": "get", "url": "/api/openchannel/queues/{id}", "title": "Gets a single Queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/queues/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowQueues", "group": "Openchannel_Queues", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelQueue/index.js", "groupTitle": "Openchannel_Queues" }, { "type": "put", "url": "/api/openchannel/queues/{id}", "title": "Update an existing Queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/queues/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateQueues", "group": "Openchannel_Queues", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelQueue/index.js", "groupTitle": "Openchannel_Queues" }, { "type": "post", "url": "/api/pauses", "title": "Creates a new Pause", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/pauses -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreatePauses", "group": "Pauses", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/pause/index.js", "groupTitle": "Pauses" }, { "type": "delete", "url": "/api/pauses/{id}", "title": "Deletes a Pause", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/pauses/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeletePauses", "group": "Pauses", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/pause/index.js", "groupTitle": "Pauses" }, { "type": "get", "url": "/api/pauses", "title": "Gets a list of Pauses", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/pauses -v -u {name}:{password}", "type": "json" } ], "name": "GetPauses", "group": "Pauses", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/pauses?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/pauses?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/pauses?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/pauses?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/pauses?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/pause/index.js", "groupTitle": "Pauses" }, { "type": "get", "url": "/api/pauses/{id}", "title": "Gets a single Pause", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/pauses/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowPauses", "group": "Pauses", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/pause/index.js", "groupTitle": "Pauses" }, { "type": "put", "url": "/api/pauses/{id}", "title": "Update an existing Pause", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/pauses/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updatePauses", "group": "Pauses", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/pause/index.js", "groupTitle": "Pauses" }, { "type": "get", "url": "/api/pm2/{id}", "title": "Gets a single pm2 process", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/pm2/{id} -v -u {name}:{password}", "type": "json" } ], "name": "GetPm2Process", "group": "Pm2", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/pm2/index.js", "groupTitle": "Pm2" }, { "type": "get", "url": "/api/pm2", "title": "Gets pm2 processes", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/pm2 -v -u {name}:{password}", "type": "json" } ], "name": "GetPm2Processes", "group": "Pm2", "description": "

Motion returns the pm2 processes list.

", "version": "0.0.0", "filename": "server/api/pm2/index.js", "groupTitle": "Pm2" }, { "type": "put", "url": "/api/pm2/{id}", "title": "Update an existing Process", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/pm2/{id} -d '{\"status\": \"online\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateProcesses", "group": "Pm2", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/pm2/index.js", "groupTitle": "Pm2" }, { "type": "get", "url": "/api/rpc/campaigns/", "title": "Gets a list of campaigns", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/rpc/campaigns -v -u {name}:{password}", "type": "json" } ], "name": "Campaigns", "group": "RPC_Realtime", "description": "

Motion will return a list of realtime campaigns parameters.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/rpc/index.js", "groupTitle": "RPC_Realtime" }, { "type": "get", "url": "/api/rpc/fax/accounts", "title": "Gets a list of FaxAccounts", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/rpc/fax/accounts -v -u {name}:{password}", "type": "json" } ], "name": "FaxAccounts", "group": "RPC_Realtime", "description": "

Motion will return a list of realtime fax account parameters.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/rpc/index.js", "groupTitle": "RPC_Realtime" }, { "type": "put", "url": "/api/rpc/agents/:id/capacity", "title": "Sets agent capacity", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/rpc/agents/:id/capacity -v -u {name}:{password}", "type": "json" } ], "name": "RTAgentCapacity", "group": "RPC_Realtime", "description": "

Motion will return the current agent capacity.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/rpc/index.js", "groupTitle": "RPC_Realtime" }, { "type": "get", "url": "/api/rpc/agents", "title": "Gets a list of RTAgents", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/rpc/agents -v -u {name}:{password}", "type": "json" } ], "name": "RTAgents", "group": "RPC_Realtime", "description": "

Motion will return a list of realtime agents parameters.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/rpc/index.js", "groupTitle": "RPC_Realtime" }, { "type": "get", "url": "/api/rpc/chat/queues", "title": "Gets a list of RTChatQueues", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/rpc/chat/queues -v -u {name}:{password}", "type": "json" } ], "name": "RTChatQueues", "group": "RPC_Realtime", "description": "

Motion will return a list of realtime chat queues parameters.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/rpc/index.js", "groupTitle": "RPC_Realtime" }, { "type": "get", "url": "/api/rpc/fax/queues", "title": "Gets a list of RTFaxQueues", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/rpc/fax/queues -v -u {name}:{password}", "type": "json" } ], "name": "RTFaxQueues", "group": "RPC_Realtime", "description": "

Motion will return a list of realtime fax queues parameters.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/rpc/index.js", "groupTitle": "RPC_Realtime" }, { "type": "get", "url": "/api/rpc/mail/accounts", "title": "Gets a list of RTMailAccounts", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/rpc/mail/accounts -v -u {name}:{password}", "type": "json" } ], "name": "RTMailAccounts", "group": "RPC_Realtime", "description": "

Motion will return a list of realtime mail account parameters.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/rpc/index.js", "groupTitle": "RPC_Realtime" }, { "type": "get", "url": "/api/rpc/mail/queues", "title": "Gets a list of RTMailQueues", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/rpc/mail/queues -v -u {name}:{password}", "type": "json" } ], "name": "RTMailQueues", "group": "RPC_Realtime", "description": "

Motion will return a list of realtime mail queues parameters.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/rpc/index.js", "groupTitle": "RPC_Realtime" }, { "type": "get", "url": "/api/rpc/openchannel/queues", "title": "Gets a list of RTOpenchannelQueues", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/rpc/openchannel/queues -v -u {name}:{password}", "type": "json" } ], "name": "RTOpenchannelQueues", "group": "RPC_Realtime", "description": "

Motion will return a list of realtime openchannel queues parameters.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/rpc/index.js", "groupTitle": "RPC_Realtime" }, { "type": "get", "url": "/api/rpc/outbound/channels", "title": "Gets a list of RTOutboundChannels", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/rpc/outbound/channels -v -u {name}:{password}", "type": "json" } ], "name": "RTOutboundChannels", "group": "RPC_Realtime", "description": "

Motion will return a list of realtime outbound channels.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/rpc/index.js", "groupTitle": "RPC_Realtime" }, { "type": "get", "url": "/api/rpc/sms/queues", "title": "Gets a list of RTSmsQueues", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/rpc/sms/queues -v -u {name}:{password}", "type": "json" } ], "name": "RTSmsQueues", "group": "RPC_Realtime", "description": "

Motion will return a list of realtime sms queues parameters.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/rpc/index.js", "groupTitle": "RPC_Realtime" }, { "type": "get", "url": "/api/rpc/telephones", "title": "Gets a list of RTTelephones", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/rpc/telephones -v -u {name}:{password}", "type": "json" } ], "name": "RTTelephones", "group": "RPC_Realtime", "description": "

Motion will return a list of telephones parameters.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/rpc/index.js", "groupTitle": "RPC_Realtime" }, { "type": "get", "url": "/api/rpc/trunks", "title": "Gets a list of RTTrunks", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/rpc/trunks -v -u {name}:{password}", "type": "json" } ], "name": "RTTrunks", "group": "RPC_Realtime", "description": "

Motion will return a list of realtime trunks parameters.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/rpc/index.js", "groupTitle": "RPC_Realtime" }, { "type": "get", "url": "/api/rpc/voice/channels", "title": "Gets a list of RTVoiceChannelMixMonitor", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/rpc/voice/channels/{uniqueid}/mixmonitor -v -u {name}:{password}", "type": "json" } ], "name": "RTVoiceChannelMixMonitor", "group": "RPC_Realtime", "description": "

Motion will return a list of realtime voice channel mixmonitor.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/rpc/index.js", "groupTitle": "RPC_Realtime" }, { "type": "get", "url": "/api/rpc/voice/channels", "title": "Gets a list of RTVoiceChannelStopMixMonitor", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/rpc/voice/channels/{uniqueid}/stopmixmonitor -v -u {name}:{password}", "type": "json" } ], "name": "RTVoiceChannelStopMixMonitor", "group": "RPC_Realtime", "description": "

Motion will return a list of realtime voice channel stopmixmonitor.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/rpc/index.js", "groupTitle": "RPC_Realtime" }, { "type": "get", "url": "/api/rpc/voice/channels", "title": "Gets a list of RTVoiceChannels", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/rpc/voice/channels -v -u {name}:{password}", "type": "json" } ], "name": "RTVoiceChannels", "group": "RPC_Realtime", "description": "

Motion will return a list of realtime voice channels.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/rpc/index.js", "groupTitle": "RPC_Realtime" }, { "type": "get", "url": "/api/rpc/voice/queues/channels/{uniqueid}", "title": "Gets a single RTVoiceQueueChannel", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/rpc/voice/queues/channels/{uniqueid} -v -u {name}:{password}", "type": "json" } ], "name": "RTVoiceQueueChannel", "group": "RPC_Realtime", "description": "

Motion will return a specific realtime voice queue channel.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/rpc/index.js", "groupTitle": "RPC_Realtime" }, { "type": "get", "url": "/api/rpc/voice/queues/channels/{uniqueid}/hangup", "title": "Hangup a single RTVoiceQueueChannel", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/rpc/voice/queues/channels/{uniqueid}/hangup -v -u {name}:{password}", "type": "json" } ], "name": "RTVoiceQueueChannelHangup", "group": "RPC_Realtime", "description": "

Motion will hangup a specific realtime voice queue channel.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/rpc/index.js", "groupTitle": "RPC_Realtime" }, { "type": "get", "url": "/api/rpc/voice/queues/channels/{uniqueid}/redirect/{exten}", "title": "Hangup a single RTVoiceQueueChannel", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/rpc/voice/queues/channels/{uniqueid}/redirect/{exten} -v -u {name}:{password}", "type": "json" } ], "name": "RTVoiceQueueChannelRedirect", "group": "RPC_Realtime", "description": "

Motion will redirect a specific realtime voice queue channel to a specific extension.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/rpc/index.js", "groupTitle": "RPC_Realtime" }, { "type": "get", "url": "/api/rpc/voice/queues/preview/{id}", "title": "Gets a single preview contact", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/rpc/voice/queues/preview/{id} -v -u {name}:{password}", "type": "json" } ], "name": "RTVoiceQueuePreview", "group": "RPC_Realtime", "description": "

Motion will return a specific preview contact.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/rpc/index.js", "groupTitle": "RPC_Realtime" }, { "type": "get", "url": "/api/rpc/voice/queues", "title": "Gets a list of RTVoiceQueues", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/rpc/voice/queues -v -u {name}:{password}", "type": "json" } ], "name": "RTVoiceQueues", "group": "RPC_Realtime", "description": "

Motion will return a list of realtime voice queues parameters.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/rpc/index.js", "groupTitle": "RPC_Realtime" }, { "type": "get", "url": "/api/rpc/outbound", "title": "Gets a list of RTOutbound", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/rpc/outbound -v -u {name}:{password}", "type": "json" } ], "name": "RTVoiceQueues", "group": "RPC_Realtime", "description": "

Motion will return a list of realtime outbound parameters.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/rpc/index.js", "groupTitle": "RPC_Realtime" }, { "type": "get", "url": "/api/rpc/voice/queues/channels", "title": "Gets a list of RTVoiceQueuesChannels", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/rpc/voice/queues/channels -v -u {name}:{password}", "type": "json" } ], "name": "RTVoiceQueuesChannels", "group": "RPC_Realtime", "description": "

Motion will return a list of realtime voice queues channels.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/rpc/index.js", "groupTitle": "RPC_Realtime" }, { "type": "get", "url": "/api/rpc/chat/queues/waitinginteractions", "title": "Gets a list of chatQueuesWaitingInteractions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/rpc/voice/queues/waitinginteractions -v -u {name}:{password}", "type": "json" } ], "name": "chatQueuesWaitingInteractions", "group": "RPC_Realtime", "description": "

Motion will return a list of realtime waiting chat queues interctions.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/rpc/index.js", "groupTitle": "RPC_Realtime" }, { "type": "get", "url": "/api/rpc/fax/queues/waitinginteractions", "title": "Gets a list of faxQueuesWaitingInteractions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/rpc/fax/queues/waitinginteractions -v -u {name}:{password}", "type": "json" } ], "name": "faxQueuesWaitingInteractions", "group": "RPC_Realtime", "description": "

Motion will return a list of realtime waiting fax queues interctions.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/rpc/index.js", "groupTitle": "RPC_Realtime" }, { "type": "get", "url": "/api/rpc/mail/queues/waitinginteractions", "title": "Gets a list of mailQueuesWaitingInteractions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/rpc/mail/queues/waitinginteractions -v -u {name}:{password}", "type": "json" } ], "name": "mailQueuesWaitingInteractions", "group": "RPC_Realtime", "description": "

Motion will return a list of realtime waiting mail queues interctions.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/rpc/index.js", "groupTitle": "RPC_Realtime" }, { "type": "get", "url": "/api/rpc/openchannel/queues/waitinginteractions", "title": "Gets a list of openchannelQueuesWaitingInteractions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/rpc/openchannel/queues/waitinginteractions -v -u {name}:{password}", "type": "json" } ], "name": "openchannelQueuesWaitingInteractions", "group": "RPC_Realtime", "description": "

Motion will return a list of realtime waiting openchannel queues interctions.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/rpc/index.js", "groupTitle": "RPC_Realtime" }, { "type": "get", "url": "/api/rpc/sms/queues/waitinginteractions", "title": "Gets a list of smsQueuesWaitingInteractions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/rpc/sms/queues/waitinginteractions -v -u {name}:{password}", "type": "json" } ], "name": "smsQueuesWaitingInteractions", "group": "RPC_Realtime", "description": "

Motion will return a list of realtime waiting sms queues interctions.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/rpc/index.js", "groupTitle": "RPC_Realtime" }, { "type": "post", "url": "/api/integrations/salesforce/accounts", "title": "Creates a new Salesforce Account", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/salesforce/accounts -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateSalesforce_Accounts", "group": "Salesforce_Accounts", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": true, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "username", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "remoteUri", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "password", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "clientId", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "clientSecret", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "securityToken", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "serverUrl", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"integrationTab\"", "\"newTab\"" ], "optional": true, "field": "type", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intSalesforceAccount/index.js", "groupTitle": "Salesforce_Accounts" }, { "type": "delete", "url": "/api/integrations/salesforce/accounts/{id}", "title": "Deletes a Salesforce Account", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/salesforce/accounts/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteSalesforce_Accounts", "group": "Salesforce_Accounts", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intSalesforceAccount/index.js", "groupTitle": "Salesforce_Accounts" }, { "type": "get", "url": "/api/integrations/salesforce/accounts", "title": "Gets a list of Salesforce Accounts", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/salesforce/accounts -v -u {name}:{password}", "type": "json" } ], "name": "GetSalesforce_Accounts", "group": "Salesforce_Accounts", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/integrations/salesforce/accounts?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/integrations/salesforce/accounts?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/integrations/salesforce/accounts?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/integrations/salesforce/accounts?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/integrations/salesforce/accounts?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/intSalesforceAccount/index.js", "groupTitle": "Salesforce_Accounts" }, { "type": "get", "url": "/api/integrations/salesforce/accounts/{id}", "title": "Gets a single Salesforce Account", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/salesforce/accounts/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowSalesforce_Accounts", "group": "Salesforce_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intSalesforceAccount/index.js", "groupTitle": "Salesforce_Accounts" }, { "type": "post", "url": "/api/integrations/salesforce/accounts/{id}/configurations", "title": "Creates new configuration", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/salesforce/accounts/{id}/configurations -d '{\"name\": \"conf1\"}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addConfiguration", "group": "Salesforce_Accounts", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intSalesforceAccount/index.js", "groupTitle": "Salesforce_Accounts" }, { "type": "get", "url": "/api/integrations/salesforce/accounts/{id}/configurations", "title": "Gets account configurations", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/salesforce/accounts/{id}/configurations -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getConfigurations", "group": "Salesforce_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intSalesforceAccount/index.js", "groupTitle": "Salesforce_Accounts" }, { "type": "get", "url": "/api/integrations/salesforce/accounts/{id}/fields", "title": "Gets account fields", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/salesforce/accounts/{id}/fields -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getFields", "group": "Salesforce_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intSalesforceAccount/index.js", "groupTitle": "Salesforce_Accounts" }, { "type": "put", "url": "/api/integrations/salesforce/accounts/{id}", "title": "Update an existing Salesforce Account", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/salesforce/accounts/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateSalesforce_Accounts", "group": "Salesforce_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intSalesforceAccount/index.js", "groupTitle": "Salesforce_Accounts" }, { "type": "post", "url": "/api/integrations/salesforce/configurations", "title": "Creates a new Salesforce Configuration", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/salesforce/configurations -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateSalesforce_Configurations", "group": "Salesforce_Configurations", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": true, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"contact_lead\"", "\"contact\"", "\"lead\"" ], "optional": true, "field": "moduleSearch", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"nothing\"", "\"contact\"", "\"lead\"" ], "optional": true, "field": "moduleCreate", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intSalesforceConfiguration/index.js", "groupTitle": "Salesforce_Configurations" }, { "type": "delete", "url": "/api/integrations/salesforce/configurations/{id}", "title": "Deletes a Salesforce Configuration", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/salesforce/configurations/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteSalesforce_Configurations", "group": "Salesforce_Configurations", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intSalesforceConfiguration/index.js", "groupTitle": "Salesforce_Configurations" }, { "type": "get", "url": "/api/integrations/salesforce/configurations", "title": "Gets a list of Salesforce Configurations", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/salesforce/configurations -v -u {name}:{password}", "type": "json" } ], "name": "GetSalesforce_Configurations", "group": "Salesforce_Configurations", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/integrations/salesforce/configurations?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/integrations/salesforce/configurations?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/integrations/salesforce/configurations?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/integrations/salesforce/configurations?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/integrations/salesforce/configurations?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/intSalesforceConfiguration/index.js", "groupTitle": "Salesforce_Configurations" }, { "type": "get", "url": "/api/integrations/salesforce/configurations/{id}", "title": "Gets a single Salesforce Configuration", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/salesforce/configurations/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowSalesforce_Configurations", "group": "Salesforce_Configurations", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intSalesforceConfiguration/index.js", "groupTitle": "Salesforce_Configurations" }, { "type": "get", "url": "/api/integrations/salesforce/configurations/{id}/descriptions", "title": "Gets configurations descriptions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/salesforce/configurations/{id}/descriptions -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getDescriptions", "group": "Salesforce_Configurations", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intSalesforceConfiguration/index.js", "groupTitle": "Salesforce_Configurations" }, { "type": "get", "url": "/api/integrations/salesforce/configurations/{id}/fields", "title": "Gets configurations fields", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/salesforce/configurations/{id}/fields -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getFields", "group": "Salesforce_Configurations", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intSalesforceConfiguration/index.js", "groupTitle": "Salesforce_Configurations" }, { "type": "get", "url": "/api/integrations/salesforce/configurations/{id}/subjects", "title": "Gets configurations subjects", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/salesforce/configurations/{id}/subjects -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getSubjects", "group": "Salesforce_Configurations", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intSalesforceConfiguration/index.js", "groupTitle": "Salesforce_Configurations" }, { "type": "put", "url": "/api/integrations/salesforce/configurations/{id}", "title": "Update an existing Salesforce Configuration", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/salesforce/configurations/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateSalesforce_Configurations", "group": "Salesforce_Configurations", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intSalesforceConfiguration/index.js", "groupTitle": "Salesforce_Configurations" }, { "type": "post", "url": "/api/integrations/salesforce/fields", "title": "Creates a new Salesforce Field", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/salesforce/fields -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateSalesforce_Fields", "group": "Salesforce_Fields", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "allowedValues": [ "\"string\"", "\"variable\"", "\"customVariable\"", "\"keyValue\"" ], "optional": true, "field": "type", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "content", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "key", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"string\"", "\"variable\"", "\"customVariable\"" ], "optional": true, "field": "keyType", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "keyContent", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "idField", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "variableName", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intSalesforceField/index.js", "groupTitle": "Salesforce_Fields" }, { "type": "delete", "url": "/api/integrations/salesforce/fields/{id}", "title": "Deletes a Salesforce Field", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/salesforce/fields/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteSalesforce_Fields", "group": "Salesforce_Fields", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intSalesforceField/index.js", "groupTitle": "Salesforce_Fields" }, { "type": "get", "url": "/api/integrations/salesforce/fields", "title": "Gets a list of Salesforce Fields", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/salesforce/fields -v -u {name}:{password}", "type": "json" } ], "name": "GetSalesforce_Fields", "group": "Salesforce_Fields", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/integrations/salesforce/fields?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/integrations/salesforce/fields?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/integrations/salesforce/fields?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/integrations/salesforce/fields?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/integrations/salesforce/fields?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/intSalesforceField/index.js", "groupTitle": "Salesforce_Fields" }, { "type": "get", "url": "/api/integrations/salesforce/fields/{id}", "title": "Gets a single Salesforce Field", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/salesforce/fields/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowSalesforce_Fields", "group": "Salesforce_Fields", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intSalesforceField/index.js", "groupTitle": "Salesforce_Fields" }, { "type": "put", "url": "/api/integrations/salesforce/fields/{id}", "title": "Update an existing Salesforce Field", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/salesforce/fields/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateSalesforce_Fields", "group": "Salesforce_Fields", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intSalesforceField/index.js", "groupTitle": "Salesforce_Fields" }, { "type": "post", "url": "/api/schedules", "title": "Creates a new Schedule", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/schedules -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateSchedules", "group": "Schedules", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" }, { "group": "Body", "type": "Boolean", "optional": false, "field": "active", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "cron", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "startAt", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "endAt", "description": "" }, { "group": "Body", "type": "Integer", "optional": false, "field": "subtractNumber", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"years\"", "\"quarters\"", "\"months\"", "\"weeks\"", "\"days\"", "\"hours\"", "\"minutes\"" ], "optional": false, "field": "subtractUnit", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"csv\"", "\"pdf\"", "\"xlsx\"" ], "optional": false, "field": "output", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"custom\"", "\"default\"" ], "optional": false, "field": "type", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "sendMail", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "email", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/schedule/index.js", "groupTitle": "Schedules" }, { "type": "delete", "url": "/api/schedules/{id}", "title": "Deletes a Schedule", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/schedules/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteSchedules", "group": "Schedules", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/schedule/index.js", "groupTitle": "Schedules" }, { "type": "get", "url": "/api/schedules", "title": "Gets a list of Schedules", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/schedules -v -u {name}:{password}", "type": "json" } ], "name": "GetSchedules", "group": "Schedules", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/schedules?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/schedules?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/schedules?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/schedules?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/schedules?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/schedule/index.js", "groupTitle": "Schedules" }, { "type": "get", "url": "/api/schedules/{id}", "title": "Gets a single Schedule", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/schedules/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowSchedules", "group": "Schedules", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/schedule/index.js", "groupTitle": "Schedules" }, { "type": "put", "url": "/api/schedules/{id}", "title": "Update an existing Schedule", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/schedules/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateSchedules", "group": "Schedules", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/schedule/index.js", "groupTitle": "Schedules" }, { "type": "get", "url": "/api/settings", "title": "Gets a list of Settings", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/settings -v -u {name}:{password}", "type": "json" } ], "name": "GetSettings", "group": "Settings", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/settings?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/settings?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/settings?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/settings?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/settings?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/setting/index.js", "groupTitle": "Settings" }, { "type": "get", "url": "/api/settings/{id}", "title": "Gets a single Setting", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/settings/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowSettings", "group": "Settings", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/setting/index.js", "groupTitle": "Settings" }, { "type": "put", "url": "/api/settings/{id}", "title": "Update settings", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/settings/{id} -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "Update", "group": "Settings", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/setting/index.js", "groupTitle": "Settings" }, { "type": "post", "url": "/api/settings/{id}/logo", "title": "Add logo", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/settings/{id}/logo -H 'Content-Type: multipart/form-data' -F 'file=@{filename}' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addLogo", "group": "Settings", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/setting/index.js", "groupTitle": "Settings" }, { "type": "post", "url": "/api/settings/{id}/logo_login", "title": "Add logo login", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/settings/{id}/logo_login -H 'Content-Type: multipart/form-data' -F 'file=@{filename}' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addLogoLogin", "group": "Settings", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/setting/index.js", "groupTitle": "Settings" }, { "type": "get", "url": "/api/settings/{id}/gdpr", "title": "Get gdpr settings", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/settings/{id}/gdpr -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getGdpr", "group": "Settings", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/setting/index.js", "groupTitle": "Settings" }, { "type": "get", "url": "/api/settings/{id}/logo", "title": "Get logo", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/settings/{id}/logo -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getLogo", "group": "Settings", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/setting/index.js", "groupTitle": "Settings" }, { "type": "get", "url": "/api/settings/{id}/logo_login", "title": "Get logo login", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/settings/{id}/logo_login -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getLogoLogin", "group": "Settings", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/setting/index.js", "groupTitle": "Settings" }, { "type": "post", "url": "/api/sms/accounts", "title": "Creates a new Account", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/accounts -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateAccounts", "group": "Sms_Accounts", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "key", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "remote", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "token", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "phone", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"twilio\"", "\"skebby\"", "\"connectel\"", "\"clicksend\"", "\"plivo\"" ], "optional": true, "field": "type", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "accountSid", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "authToken", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"basic\"", "\"classic\"", "\"classic+\"" ], "optional": true, "field": "smsMethod", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "username", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "password", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "senderString", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "deliveryReport", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsAccount/index.js", "groupTitle": "Sms_Accounts" }, { "type": "delete", "url": "/api/sms/accounts/{id}", "title": "Deletes a Account", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/accounts/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteAccounts", "group": "Sms_Accounts", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsAccount/index.js", "groupTitle": "Sms_Accounts" }, { "type": "get", "url": "/api/sms/accounts/describe", "title": "Gets table info about Accounts", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/accounts/describe -v -u {name}:{password}", "type": "json" } ], "name": "DescribeAccounts", "group": "Sms_Accounts", "description": "

Motion will return a HTTP status code 200 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsAccount/index.js", "groupTitle": "Sms_Accounts" }, { "type": "get", "url": "/api/sms/accounts", "title": "Gets a list of Accounts", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/accounts -v -u {name}:{password}", "type": "json" } ], "name": "GetAccounts", "group": "Sms_Accounts", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/sms/accounts?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/sms/accounts?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/sms/accounts?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/sms/accounts?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/sms/accounts?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/smsAccount/index.js", "groupTitle": "Sms_Accounts" }, { "type": "delete", "url": "/api/sms/accounts/{id}/canned_answers", "title": "Removes canned answers from account", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/accounts/{id}/canned_answers?ids=1&ids=2 -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "RemoveAnswers", "group": "Sms_Accounts", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsAccount/index.js", "groupTitle": "Sms_Accounts" }, { "type": "get", "url": "/api/sms/accounts/{id}", "title": "Gets a single Account", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/accounts/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowAccounts", "group": "Sms_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsAccount/index.js", "groupTitle": "Sms_Accounts" }, { "type": "put", "url": "/api/sms/messages/{id}/accept", "title": "Accepts message", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/messages/{id}/accept \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "acceptMessage", "group": "Sms_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsMessage/index.js", "groupTitle": "Sms_Accounts" }, { "type": "post", "url": "/api/sms/accounts/{id}/canned_answers", "title": "Creates new canned answer", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/accounts/{id}/canned_answers -d '{\"name\": \"vip\"}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addAnswer", "group": "Sms_Accounts", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "key", "description": "" }, { "group": "Body", "type": "Text", "optional": false, "field": "value", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsAccount/index.js", "groupTitle": "Sms_Accounts" }, { "type": "post", "url": "/api/sms/accounts/{id}/applications", "title": "Creates new applications", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/accounts/{id}/applications -d '[{\"app\": \"queue\", \"...\": \"...\"}]' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addApplications", "group": "Sms_Accounts", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "Integer", "optional": false, "field": "priority", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "app", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "appdata", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "interval", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsAccount/index.js", "groupTitle": "Sms_Accounts" }, { "type": "post", "url": "/api/sms/accounts/{id}/dispositions", "title": "Creates new disposition", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/accounts/{id}/dispositions -d '{\"name\": \"Satisfied\"}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addDisposition", "group": "Sms_Accounts", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "name", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsAccount/index.js", "groupTitle": "Sms_Accounts" }, { "type": "post", "url": "/api/sms/accounts/{id}/dispositions", "title": "Creates many dispositions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/accounts/{id}/dispositions -d '[{\"name\": \"Satisfied\"}]' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addDispositions", "group": "Sms_Accounts", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "name", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsAccount/index.js", "groupTitle": "Sms_Accounts" }, { "type": "get", "url": "/api/sms/accounts/{id}/canned_answers", "title": "Gets account canned answers", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/accounts/{id}/canned_answers -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getAnswers", "group": "Sms_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsAccount/index.js", "groupTitle": "Sms_Accounts" }, { "type": "get", "url": "/api/sms/accounts/{id}/applications", "title": "Gets account applications", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/accounts/{id}/applications -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getApplications", "group": "Sms_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsAccount/index.js", "groupTitle": "Sms_Accounts" }, { "type": "get", "url": "/api/sms/accounts/{id}/dispositions", "title": "Gets account dispositions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/accounts/{id}/dispositions -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getDispositions", "group": "Sms_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsAccount/index.js", "groupTitle": "Sms_Accounts" }, { "type": "get", "url": "/api/sms/accounts/{id}/interactions", "title": "Gets Sms Account interactions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/accounts/{id}/interactions -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getInteractions", "group": "Sms_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsAccount/index.js", "groupTitle": "Sms_Accounts" }, { "type": "post", "url": "/api/sms/accounts/{id}/notify", "title": "Notify new message", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/accounts/{id}/notify -d '{\"body\": \"hello world\", \"...\": \"...\"}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "notify", "group": "Sms_Accounts", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

This API is used to create a new sms message to be sent to the system.

", "version": "0.0.0", "filename": "server/api/smsAccount/index.js", "groupTitle": "Sms_Accounts" }, { "type": "put", "url": "/api/sms/messages/{id}/reject", "title": "Rejects message", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/messages/{id}/reject \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "rejectMessage", "group": "Sms_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsMessage/index.js", "groupTitle": "Sms_Accounts" }, { "type": "post", "url": "/api/sms/accounts/{id}/send", "title": "Send new sms message", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/accounts/{id}/send -d '{from: '+39333123456', body: 'This is a test'}' -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "sendSms", "group": "Sms_Accounts", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsAccount/index.js", "groupTitle": "Sms_Accounts" }, { "type": "post", "url": "/api/sms/messages/{id}/status", "title": "Receive message status", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/messages/{id}/status \\ \n -H 'Content-Type: application/json' -v -X POST", "type": "json" } ], "name": "statusMessage", "group": "Sms_Accounts", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsMessage/index.js", "groupTitle": "Sms_Accounts" }, { "type": "post", "url": "/api/sms/accounts/{id}/status", "title": "Receive message status", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/accounts/{id}/status \\ \n -H 'Content-Type: application/json' -v -X POST", "type": "json" } ], "name": "statusMessage", "group": "Sms_Accounts", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsAccount/index.js", "groupTitle": "Sms_Accounts" }, { "type": "put", "url": "/api/sms/accounts/{id}", "title": "Update an existing Account", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/accounts/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateAccounts", "group": "Sms_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsAccount/index.js", "groupTitle": "Sms_Accounts" }, { "type": "post", "url": "/api/sms/applications", "title": "Creates a new Application", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/applications -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateApplications", "group": "Sms_Applications", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "Integer", "optional": false, "field": "priority", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "app", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "appdata", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "interval", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsApplication/index.js", "groupTitle": "Sms_Applications" }, { "type": "delete", "url": "/api/sms/applications/{id}", "title": "Deletes a Application", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/applications/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteApplications", "group": "Sms_Applications", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsApplication/index.js", "groupTitle": "Sms_Applications" }, { "type": "get", "url": "/api/sms/applications", "title": "Gets a list of Applications", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/applications -v -u {name}:{password}", "type": "json" } ], "name": "GetApplications", "group": "Sms_Applications", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/sms/applications?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/sms/applications?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/sms/applications?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/sms/applications?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/sms/applications?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/smsApplication/index.js", "groupTitle": "Sms_Applications" }, { "type": "get", "url": "/api/sms/applications/{id}", "title": "Gets a single Application", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/applications/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowApplications", "group": "Sms_Applications", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsApplication/index.js", "groupTitle": "Sms_Applications" }, { "type": "put", "url": "/api/sms/applications/{id}", "title": "Update an existing Application", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/applications/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateApplications", "group": "Sms_Applications", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsApplication/index.js", "groupTitle": "Sms_Applications" }, { "type": "post", "url": "/api/sms/dispositions", "title": "Creates a new Disposition", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/dispositions -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateDispositions", "group": "Sms_Dispositions", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "name", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsDisposition/index.js", "groupTitle": "Sms_Dispositions" }, { "type": "delete", "url": "/api/sms/dispositions/{id}", "title": "Deletes a Disposition", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/dispositions/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteDispositions", "group": "Sms_Dispositions", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsDisposition/index.js", "groupTitle": "Sms_Dispositions" }, { "type": "get", "url": "/api/sms/dispositions/{id}", "title": "Gets a single Disposition", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/dispositions/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowDispositions", "group": "Sms_Dispositions", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsDisposition/index.js", "groupTitle": "Sms_Dispositions" }, { "type": "put", "url": "/api/sms/dispositions/{id}", "title": "Update an existing Disposition", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/dispositions/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateDispositions", "group": "Sms_Dispositions", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsDisposition/index.js", "groupTitle": "Sms_Dispositions" }, { "type": "post", "url": "/api/sms/interactions/{id}/tags", "title": "Add tags to the interaction", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/interaction/{id}/tags -d '{\"ids\": [1,2]}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "AddTags", "group": "Sms_Interactions", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsInteraction/index.js", "groupTitle": "Sms_Interactions" }, { "type": "post", "url": "/api/sms/interactions", "title": "Creates a new Interaction", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/interactions -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateInteractions", "group": "Sms_Interactions", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "Boolean", "optional": true, "field": "closed", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "closedAt", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "disposition", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "note", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "phone", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "read1stAt", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"in\"", "\"out\"" ], "optional": false, "field": "firstMsgDirection", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "lastMsgAt", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"in\"", "\"out\"" ], "optional": false, "field": "lastMsgDirection", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsInteraction/index.js", "groupTitle": "Sms_Interactions" }, { "type": "delete", "url": "/api/sms/interactions/{id}", "title": "Deletes a Interaction", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/interactions/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteInteractions", "group": "Sms_Interactions", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsInteraction/index.js", "groupTitle": "Sms_Interactions" }, { "type": "get", "url": "/api/sms/interactions/describe", "title": "Gets table info about Interactions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/interactions/describe -v -u {name}:{password}", "type": "json" } ], "name": "DescribeInteractions", "group": "Sms_Interactions", "description": "

Motion will return a HTTP status code 200 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsInteraction/index.js", "groupTitle": "Sms_Interactions" }, { "type": "get", "url": "/api/sms/interactions", "title": "Gets a list of Interactions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/interactions -v -u {name}:{password}", "type": "json" } ], "name": "GetInteractions", "group": "Sms_Interactions", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/sms/interactions?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/sms/interactions?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/sms/interactions?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/sms/interactions?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/sms/interactions?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/smsInteraction/index.js", "groupTitle": "Sms_Interactions" }, { "type": "delete", "url": "/api/sms/interactions/{id}/tags", "title": "Removes tags from interaction", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/interactions/{id}/tags?ids=1&ids=2 -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "RemoveTags", "group": "Sms_Interactions", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsInteraction/index.js", "groupTitle": "Sms_Interactions" }, { "type": "get", "url": "/api/sms/interactions/{id}", "title": "Gets a single Interaction", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/interactions/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowInteractions", "group": "Sms_Interactions", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsInteraction/index.js", "groupTitle": "Sms_Interactions" }, { "type": "post", "url": "/api/sms/interactions/{id}/messages", "title": "Creates new messages", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/interactions/{id}/messages -d '[{\"to\": \"+3901119886500\", \"...\": \"...\"}]' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addMessage", "group": "Sms_Interactions", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "Text", "optional": false, "field": "body", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "read", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"in\"", "\"out\"" ], "optional": false, "field": "direction", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "messageId", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "phone", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "readAt", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "secret", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsInteraction/index.js", "groupTitle": "Sms_Interactions" }, { "type": "get", "url": "/api/sms/interactions/{id}/messages", "title": "Gets interaction messages", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/interactions/{id}/messages -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getMessages", "group": "Sms_Interactions", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsInteraction/index.js", "groupTitle": "Sms_Interactions" }, { "type": "put", "url": "/api/sms/interactions/{id}", "title": "Update an existing Interaction", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/interactions/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateInteractions", "group": "Sms_Interactions", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsInteraction/index.js", "groupTitle": "Sms_Interactions" }, { "type": "post", "url": "/api/sms/messages", "title": "Creates a new Message", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/messages -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateMessages", "group": "Sms_Messages", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "Text", "optional": false, "field": "body", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "read", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"in\"", "\"out\"" ], "optional": false, "field": "direction", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "messageId", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "phone", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "readAt", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "secret", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsMessage/index.js", "groupTitle": "Sms_Messages" }, { "type": "delete", "url": "/api/sms/messages/{id}", "title": "Deletes a Message", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/messages/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteMessages", "group": "Sms_Messages", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsMessage/index.js", "groupTitle": "Sms_Messages" }, { "type": "get", "url": "/api/sms/messages/describe", "title": "Gets table info about Messages", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/messages/describe -v -u {name}:{password}", "type": "json" } ], "name": "DescribeMessages", "group": "Sms_Messages", "description": "

Motion will return a HTTP status code 200 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsMessage/index.js", "groupTitle": "Sms_Messages" }, { "type": "get", "url": "/api/sms/messages", "title": "Gets a list of Messages", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/messages -v -u {name}:{password}", "type": "json" } ], "name": "GetMessages", "group": "Sms_Messages", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/sms/messages?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/sms/messages?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/sms/messages?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/sms/messages?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/sms/messages?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/smsMessage/index.js", "groupTitle": "Sms_Messages" }, { "type": "get", "url": "/api/sms/messages/{id}", "title": "Gets a single Message", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/messages/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowMessages", "group": "Sms_Messages", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsMessage/index.js", "groupTitle": "Sms_Messages" }, { "type": "put", "url": "/api/sms/messages/{id}", "title": "Update an existing Message", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/messages/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateMessages", "group": "Sms_Messages", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsMessage/index.js", "groupTitle": "Sms_Messages" }, { "type": "post", "url": "/api/sms/reports/queue", "title": "Creates a new Sms Queue Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/reports/queue -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateSms_Queue_Reports", "group": "Sms_Queue_Reports", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "uniqueid", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "from", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "joinAt", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "leaveAt", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "acceptAt", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "exitAt", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "reason", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsQueueReport/index.js", "groupTitle": "Sms_Queue_Reports" }, { "type": "delete", "url": "/api/sms/reports/queue/{id}", "title": "Deletes a Sms Queue Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/reports/queue/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteSms_Queue_Reports", "group": "Sms_Queue_Reports", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsQueueReport/index.js", "groupTitle": "Sms_Queue_Reports" }, { "type": "get", "url": "/api/sms/reports/queue/describe", "title": "Gets table info about Sms Queue Reports", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/reports/queue/describe -v -u {name}:{password}", "type": "json" } ], "name": "DescribeSms_Queue_Reports", "group": "Sms_Queue_Reports", "description": "

Motion will return a HTTP status code 200 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsQueueReport/index.js", "groupTitle": "Sms_Queue_Reports" }, { "type": "get", "url": "/api/sms/reports/queue", "title": "Gets a list of Sms Queue Reports", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/reports/queue -v -u {name}:{password}", "type": "json" } ], "name": "GetSms_Queue_Reports", "group": "Sms_Queue_Reports", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/sms/reports/queue?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/sms/reports/queue?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/sms/reports/queue?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/sms/reports/queue?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/sms/reports/queue?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/smsQueueReport/index.js", "groupTitle": "Sms_Queue_Reports" }, { "type": "get", "url": "/api/sms/reports/queue/{id}", "title": "Gets a single Sms Queue Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/reports/queue/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowSms_Queue_Reports", "group": "Sms_Queue_Reports", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsQueueReport/index.js", "groupTitle": "Sms_Queue_Reports" }, { "type": "put", "url": "/api/sms/reports/queue/{id}", "title": "Update an existing Sms Queue Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/reports/queue/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateSms_Queue_Reports", "group": "Sms_Queue_Reports", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsQueueReport/index.js", "groupTitle": "Sms_Queue_Reports" }, { "type": "post", "url": "/api/sms/queues/{id}/users", "title": "Add agents to a queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/queues/{id}/users -d '{\"ids\": [1,2], \"penalty\": 2}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "AddAgents", "group": "Sms_Queues", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsQueue/index.js", "groupTitle": "Sms_Queues" }, { "type": "post", "url": "/api/sms/queues/{id}/teams", "title": "Add teams to a queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/queues/{id}/teams -d '{\"ids\": [1,2]}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "AddTeams", "group": "Sms_Queues", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsQueue/index.js", "groupTitle": "Sms_Queues" }, { "type": "post", "url": "/api/sms/queues", "title": "Creates a new Queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/queues -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateQueues", "group": "Sms_Queues", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": true, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "timeout", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"rrmemory\"", "\"beepall\"", "\"roundrobin\"" ], "optional": true, "field": "strategy", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsQueue/index.js", "groupTitle": "Sms_Queues" }, { "type": "delete", "url": "/api/sms/queues/{id}", "title": "Deletes a Queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/queues/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteQueues", "group": "Sms_Queues", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsQueue/index.js", "groupTitle": "Sms_Queues" }, { "type": "get", "url": "/api/sms/queues/describe", "title": "Gets table info about Queues", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/queues/describe -v -u {name}:{password}", "type": "json" } ], "name": "DescribeQueues", "group": "Sms_Queues", "description": "

Motion will return a HTTP status code 200 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsQueue/index.js", "groupTitle": "Sms_Queues" }, { "type": "get", "url": "/api/sms/queues/{id}/users", "title": "Gets queue agents", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/queues/{id}/users -v -u {name}:{password} -X POST", "type": "json" } ], "name": "GetAgents", "group": "Sms_Queues", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsQueue/index.js", "groupTitle": "Sms_Queues" }, { "type": "get", "url": "/api/sms/queues/{id}/members", "title": "GetMembers", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/queues/{id}/members -v -u {name}:{password}", "type": "json" } ], "name": "GetMembers", "group": "Sms_Queues", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsQueue/index.js", "groupTitle": "Sms_Queues" }, { "type": "get", "url": "/api/sms/queues", "title": "Gets a list of Queues", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/queues -v -u {name}:{password}", "type": "json" } ], "name": "GetQueues", "group": "Sms_Queues", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/sms/queues?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/sms/queues?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/sms/queues?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/sms/queues?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/sms/queues?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/smsQueue/index.js", "groupTitle": "Sms_Queues" }, { "type": "get", "url": "/api/sms/queues/{id}/teams", "title": "Gets queues list", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/queues/{id}/teams -v -u {name}:{password}", "type": "json" } ], "name": "GetTeams", "group": "Sms_Queues", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsQueue/index.js", "groupTitle": "Sms_Queues" }, { "type": "delete", "url": "/api/sms/queues/{id}/users", "title": "Removes agents from a queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/queues/{id}/users?ids=1&ids=2 -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "RemoveAgents", "group": "Sms_Queues", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsQueue/index.js", "groupTitle": "Sms_Queues" }, { "type": "get", "url": "/api/sms/queues/{id}", "title": "Gets a single Queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/queues/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowQueues", "group": "Sms_Queues", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsQueue/index.js", "groupTitle": "Sms_Queues" }, { "type": "put", "url": "/api/sms/queues/{id}", "title": "Update an existing Queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/queues/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateQueues", "group": "Sms_Queues", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsQueue/index.js", "groupTitle": "Sms_Queues" }, { "type": "get", "url": "/api/sounds", "title": "Gets a list of Sounds", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sounds -v -u {name}:{password}", "type": "json" } ], "name": "GetSounds", "group": "Sounds", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/sounds?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/sounds?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/sounds?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/sounds?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/sounds?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/sound/index.js", "groupTitle": "Sounds" }, { "type": "get", "url": "/api/sounds/{id}", "title": "Gets a single Sound", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sounds/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowSounds", "group": "Sounds", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/sound/index.js", "groupTitle": "Sounds" }, { "type": "post", "url": "/api/sounds", "title": "Create a new sound", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sounds -H 'Content-Type: multipart/form-data' -F 'file=@{filename}' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addSound", "group": "Sounds", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/sound/index.js", "groupTitle": "Sounds" }, { "type": "delete", "url": "/api/sounds/{id}", "title": "Deletes a sound", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sounds/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "destroySound", "group": "Sounds", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/sound/index.js", "groupTitle": "Sounds" }, { "type": "get", "url": "/api/sounds/{id}/download", "title": "Download Sound", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sounds/{id}/download -v -u {name}:{password} -X GET", "type": "json" } ], "name": "download", "group": "Sounds", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/sound/index.js", "groupTitle": "Sounds" }, { "type": "put", "url": "/api/sounds", "title": "Update an existing new sound", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sounds -d '[\"name\": \"sound_name\", \"description\": \"sound_desc\"]' -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateSound", "group": "Sounds", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/sound/index.js", "groupTitle": "Sounds" }, { "type": "post", "url": "/api/square/details/reports", "title": "Creates a new Square Detail Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/square/details/reports -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateSquare_Detail_Reports", "group": "Square_Details_Reports", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": true, "field": "uniqueid", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "node", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "application", "description": "" }, { "group": "Body", "type": "Text", "optional": true, "field": "data", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "project_name", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "callerid", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/squareReportDetail/index.js", "groupTitle": "Square_Details_Reports" }, { "type": "delete", "url": "/api/square/details/reports/{id}", "title": "Deletes a Square Detail Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/square/details/reports/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteSquare_Detail_Reports", "group": "Square_Details_Reports", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/squareReportDetail/index.js", "groupTitle": "Square_Details_Reports" }, { "type": "get", "url": "/api/square/details/reports/describe", "title": "Gets table info about Square Detail Reports", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/square/details/reports/describe -v -u {name}:{password}", "type": "json" } ], "name": "DescribeSquare_Detail_Reports", "group": "Square_Details_Reports", "description": "

Motion will return a HTTP status code 200 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/squareReportDetail/index.js", "groupTitle": "Square_Details_Reports" }, { "type": "get", "url": "/api/square/details/reports", "title": "Gets a list of Square Detail Reports", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/square/details/reports -v -u {name}:{password}", "type": "json" } ], "name": "GetSquare_Detail_Reports", "group": "Square_Details_Reports", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/square/details/reports?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/square/details/reports?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/square/details/reports?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/square/details/reports?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/square/details/reports?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/squareReportDetail/index.js", "groupTitle": "Square_Details_Reports" }, { "type": "get", "url": "/api/square/details/reports/{id}", "title": "Gets a single Square Detail Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/square/details/reports/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowSquare_Detail_Reports", "group": "Square_Details_Reports", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/squareReportDetail/index.js", "groupTitle": "Square_Details_Reports" }, { "type": "put", "url": "/api/square/details/reports/{id}", "title": "Update an existing Square Detail Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/square/details/reports/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateSquare_Detail_Reports", "group": "Square_Details_Reports", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/squareReportDetail/index.js", "groupTitle": "Square_Details_Reports" }, { "type": "post", "url": "/api/square/odbc", "title": "Creates a new ODBC", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/square/odbc -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateODBCs", "group": "Square_ODBC", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "dsn", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/squareOdbc/index.js", "groupTitle": "Square_ODBC" }, { "type": "delete", "url": "/api/square/odbc/{id}", "title": "Deletes a ODBC", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/square/odbc/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteODBCs", "group": "Square_ODBC", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/squareOdbc/index.js", "groupTitle": "Square_ODBC" }, { "type": "get", "url": "/api/square/odbc", "title": "Gets a list of ODBCs", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/square/odbc -v -u {name}:{password}", "type": "json" } ], "name": "GetODBCs", "group": "Square_ODBC", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/square/odbc?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/square/odbc?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/square/odbc?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/square/odbc?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/square/odbc?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/squareOdbc/index.js", "groupTitle": "Square_ODBC" }, { "type": "get", "url": "/api/square/odbc/{id}", "title": "Gets a single ODBC", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/square/odbc/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowODBCs", "group": "Square_ODBC", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/squareOdbc/index.js", "groupTitle": "Square_ODBC" }, { "type": "get", "url": "/api/square/odbc/{id}/test", "title": "Test Odbc", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/square/odbc/{id}/test -v -u {name}:{password} -X GET", "type": "json" } ], "name": "test", "group": "Square_ODBC", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/squareOdbc/index.js", "groupTitle": "Square_ODBC" }, { "type": "put", "url": "/api/square/odbc/{id}", "title": "Update an existing ODBC", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/square/odbc/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateODBCs", "group": "Square_ODBC", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/squareOdbc/index.js", "groupTitle": "Square_ODBC" }, { "type": "post", "url": "/api/square/projects", "title": "Creates a new Project", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/square/projects -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateProjects", "group": "Square_Projects", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" }, { "group": "Body", "type": "Text", "optional": true, "field": "notes", "description": "" }, { "group": "Body", "type": "Blob", "optional": true, "field": "preproduction", "description": "" }, { "group": "Body", "type": "Blob", "optional": true, "field": "production", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/squareProject/index.js", "groupTitle": "Square_Projects" }, { "type": "delete", "url": "/api/square/projects/{id}", "title": "Deletes a Project", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/square/projects/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteProjects", "group": "Square_Projects", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/squareProject/index.js", "groupTitle": "Square_Projects" }, { "type": "get", "url": "/api/square/projects", "title": "Gets a list of Projects", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/square/projects -v -u {name}:{password}", "type": "json" } ], "name": "GetProjects", "group": "Square_Projects", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/square/projects?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/square/projects?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/square/projects?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/square/projects?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/square/projects?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/squareProject/index.js", "groupTitle": "Square_Projects" }, { "type": "get", "url": "/api/square/projects/{id}", "title": "Gets a single Project", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/square/projects/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowProjects", "group": "Square_Projects", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/squareProject/index.js", "groupTitle": "Square_Projects" }, { "type": "put", "url": "/api/square/projects/{id}", "title": "Update an existing Project", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/square/projects/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateProjects", "group": "Square_Projects", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/squareProject/index.js", "groupTitle": "Square_Projects" }, { "type": "post", "url": "/api/square/recordings", "title": "Creates a new Recording", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/square/recordings -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateRecordings", "group": "Square_Recordings", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": true, "field": "uniqueid", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "callerid", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "calleridname", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "context", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "extension", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "priority", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "accountcode", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "dnid", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "projectName", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "saveName", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "filename", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "savePath", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/squareRecording/index.js", "groupTitle": "Square_Recordings" }, { "type": "delete", "url": "/api/square/recordings/{id}", "title": "Deletes a Recording", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/square/recordings/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteRecordings", "group": "Square_Recordings", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/squareRecording/index.js", "groupTitle": "Square_Recordings" }, { "type": "get", "url": "/api/square/recordings", "title": "Gets a list of Recordings", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/square/recordings -v -u {name}:{password}", "type": "json" } ], "name": "GetRecordings", "group": "Square_Recordings", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/square/recordings?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/square/recordings?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/square/recordings?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/square/recordings?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/square/recordings?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/squareRecording/index.js", "groupTitle": "Square_Recordings" }, { "type": "get", "url": "/api/square/recordings/{id}", "title": "Gets a single Recording", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/square/recordings/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowRecordings", "group": "Square_Recordings", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/squareRecording/index.js", "groupTitle": "Square_Recordings" }, { "type": "get", "url": "/api/square/recordings/{id}/download", "title": "Download Recording", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/square/recordings/{id}/download -v -u {name}:{password} -X GET", "type": "json" } ], "name": "download", "group": "Square_Recordings", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/squareRecording/index.js", "groupTitle": "Square_Recordings" }, { "type": "put", "url": "/api/square/recordings/{id}", "title": "Update an existing Recording", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/square/recordings/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateRecordings", "group": "Square_Recordings", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/squareRecording/index.js", "groupTitle": "Square_Recordings" }, { "type": "post", "url": "/api/square/reports", "title": "Creates a new Square Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/square/reports -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateSquare_Reports", "group": "Square_Reports", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": true, "field": "network", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "network_script", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "request", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "channel", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "language", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "type", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "uniqueid", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "version", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "callerid", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "calleridname", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "callingpres", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "callingani2", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "callington", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "callingtns", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "dnid", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "rdnis", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "context", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "extension", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "priority", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "enhanced", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "accountcode", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "threadid", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "project_name", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "joinAt", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "leaveAt", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/squareReport/index.js", "groupTitle": "Square_Reports" }, { "type": "delete", "url": "/api/square/reports/{id}", "title": "Deletes a Square Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/square/reports/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteSquare_Reports", "group": "Square_Reports", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/squareReport/index.js", "groupTitle": "Square_Reports" }, { "type": "get", "url": "/api/square/reports/describe", "title": "Gets table info about Square Reports", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/square/reports/describe -v -u {name}:{password}", "type": "json" } ], "name": "DescribeSquare_Reports", "group": "Square_Reports", "description": "

Motion will return a HTTP status code 200 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/squareReport/index.js", "groupTitle": "Square_Reports" }, { "type": "get", "url": "/api/square/reports", "title": "Gets a list of Square Reports", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/square/reports -v -u {name}:{password}", "type": "json" } ], "name": "GetSquare_Reports", "group": "Square_Reports", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/square/reports?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/square/reports?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/square/reports?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/square/reports?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/square/reports?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/squareReport/index.js", "groupTitle": "Square_Reports" }, { "type": "get", "url": "/api/square/reports/{id}", "title": "Gets a single Square Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/square/reports/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowSquare_Reports", "group": "Square_Reports", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/squareReport/index.js", "groupTitle": "Square_Reports" }, { "type": "put", "url": "/api/square/reports/{id}", "title": "Update an existing Square Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/square/reports/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateSquare_Reports", "group": "Square_Reports", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/squareReport/index.js", "groupTitle": "Square_Reports" }, { "type": "post", "url": "/api/integrations/sugarcrm/configurations", "title": "Creates a new SugarCRM Configuration", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/sugarcrm/configurations -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateSugarCRM_Configurations", "group": "SugarCRM_Configurations", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": true, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intSugarcrmConfiguration/index.js", "groupTitle": "SugarCRM_Configurations" }, { "type": "delete", "url": "/api/integrations/sugarcrm/configurations/{id}", "title": "Deletes a SugarCRM Configuration", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/sugarcrm/configurations/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteSugarCRM_Configurations", "group": "SugarCRM_Configurations", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intSugarcrmConfiguration/index.js", "groupTitle": "SugarCRM_Configurations" }, { "type": "get", "url": "/api/integrations/sugarcrm/configurations", "title": "Gets a list of SugarCRM Configurations", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/sugarcrm/configurations -v -u {name}:{password}", "type": "json" } ], "name": "GetSugarCRM_Configurations", "group": "SugarCRM_Configurations", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/integrations/sugarcrm/configurations?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/integrations/sugarcrm/configurations?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/integrations/sugarcrm/configurations?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/integrations/sugarcrm/configurations?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/integrations/sugarcrm/configurations?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/intSugarcrmConfiguration/index.js", "groupTitle": "SugarCRM_Configurations" }, { "type": "get", "url": "/api/integrations/sugarcrm/configurations/{id}", "title": "Gets a single SugarCRM Configuration", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/sugarcrm/configurations/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowSugarCRM_Configurations", "group": "SugarCRM_Configurations", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intSugarcrmConfiguration/index.js", "groupTitle": "SugarCRM_Configurations" }, { "type": "put", "url": "/api/integrations/sugarcrm/configurations/{id}", "title": "Update an existing SugarCRM Configuration", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/sugarcrm/configurations/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateSugarCRM_Configurations", "group": "SugarCRM_Configurations", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intSugarcrmConfiguration/index.js", "groupTitle": "SugarCRM_Configurations" }, { "type": "post", "url": "/api/integrations/sugarcrm/accounts", "title": "Creates a new Sugarcrm Account", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/sugarcrm/accounts -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateSugarcrm_Accounts", "group": "Sugarcrm_Accounts", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": true, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "username", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "password", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "remoteUri", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "serverUrl", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intSugarcrmAccount/index.js", "groupTitle": "Sugarcrm_Accounts" }, { "type": "delete", "url": "/api/integrations/sugarcrm/accounts/{id}", "title": "Deletes a Sugarcrm Account", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/sugarcrm/accounts/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteSugarcrm_Accounts", "group": "Sugarcrm_Accounts", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intSugarcrmAccount/index.js", "groupTitle": "Sugarcrm_Accounts" }, { "type": "get", "url": "/api/integrations/sugarcrm/accounts", "title": "Gets a list of Sugarcrm Accounts", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/sugarcrm/accounts -v -u {name}:{password}", "type": "json" } ], "name": "GetSugarcrm_Accounts", "group": "Sugarcrm_Accounts", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/integrations/sugarcrm/accounts?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/integrations/sugarcrm/accounts?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/integrations/sugarcrm/accounts?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/integrations/sugarcrm/accounts?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/integrations/sugarcrm/accounts?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/intSugarcrmAccount/index.js", "groupTitle": "Sugarcrm_Accounts" }, { "type": "get", "url": "/api/integrations/sugarcrm/accounts/{id}", "title": "Gets a single Sugarcrm Account", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/sugarcrm/accounts/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowSugarcrm_Accounts", "group": "Sugarcrm_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intSugarcrmAccount/index.js", "groupTitle": "Sugarcrm_Accounts" }, { "type": "post", "url": "/api/integrations/sugarcrm/accounts/{id}/configurations", "title": "Creates new configuration", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/sugarcrm/accounts/{id}/configurations -d '{\"name\": \"conf1\"}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addConfiguration", "group": "Sugarcrm_Accounts", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intSugarcrmAccount/index.js", "groupTitle": "Sugarcrm_Accounts" }, { "type": "get", "url": "/api/integrations/sugarcrm/accounts/{id}/configurations", "title": "Gets account configurations", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/sugarcrm/accounts/{id}/configurations -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getConfigurations", "group": "Sugarcrm_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intSugarcrmAccount/index.js", "groupTitle": "Sugarcrm_Accounts" }, { "type": "get", "url": "/api/integrations/sugarcrm/accounts/{id}/fields", "title": "Gets account fields", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/sugarcrm/accounts/{id}/fields -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getFields", "group": "Sugarcrm_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intSugarcrmAccount/index.js", "groupTitle": "Sugarcrm_Accounts" }, { "type": "put", "url": "/api/integrations/sugarcrm/accounts/{id}", "title": "Update an existing Sugarcrm Account", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/sugarcrm/accounts/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateSugarcrm_Accounts", "group": "Sugarcrm_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intSugarcrmAccount/index.js", "groupTitle": "Sugarcrm_Accounts" }, { "type": "get", "url": "/api/integrations/sugarcrm/configurations/{id}/descriptions", "title": "Gets configurations descriptions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/sugarcrm/configurations/{id}/descriptions -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getDescriptions", "group": "Sugarcrm_Configurations", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intSugarcrmConfiguration/index.js", "groupTitle": "Sugarcrm_Configurations" }, { "type": "get", "url": "/api/integrations/sugarcrm/configurations/{id}/fields", "title": "Gets configurations fields", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/sugarcrm/configurations/{id}/fields -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getFields", "group": "Sugarcrm_Configurations", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intSugarcrmConfiguration/index.js", "groupTitle": "Sugarcrm_Configurations" }, { "type": "get", "url": "/api/integrations/sugarcrm/configurations/{id}/subjects", "title": "Gets configurations subjects", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/sugarcrm/configurations/{id}/subjects -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getSubjects", "group": "Sugarcrm_Configurations", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intSugarcrmConfiguration/index.js", "groupTitle": "Sugarcrm_Configurations" }, { "type": "post", "url": "/api/integrations/sugarcrm/fields", "title": "Creates a new Sugarcrm Field", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/sugarcrm/fields -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateSugarcrm_Fields", "group": "Sugarcrm_Fields", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "allowedValues": [ "\"string\"", "\"variable\"", "\"customVariable\"", "\"keyValue\"" ], "optional": true, "field": "type", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "content", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "key", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"string\"", "\"variable\"", "\"customVariable\"" ], "optional": true, "field": "keyType", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "keyContent", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "idField", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "nameField", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "customField", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "variableName", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intSugarcrmField/index.js", "groupTitle": "Sugarcrm_Fields" }, { "type": "delete", "url": "/api/integrations/sugarcrm/fields/{id}", "title": "Deletes a Sugarcrm Field", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/sugarcrm/fields/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteSugarcrm_Fields", "group": "Sugarcrm_Fields", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intSugarcrmField/index.js", "groupTitle": "Sugarcrm_Fields" }, { "type": "get", "url": "/api/integrations/sugarcrm/fields", "title": "Gets a list of Sugarcrm Fields", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/sugarcrm/fields -v -u {name}:{password}", "type": "json" } ], "name": "GetSugarcrm_Fields", "group": "Sugarcrm_Fields", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/integrations/sugarcrm/fields?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/integrations/sugarcrm/fields?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/integrations/sugarcrm/fields?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/integrations/sugarcrm/fields?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/integrations/sugarcrm/fields?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/intSugarcrmField/index.js", "groupTitle": "Sugarcrm_Fields" }, { "type": "get", "url": "/api/integrations/sugarcrm/fields/{id}", "title": "Gets a single Sugarcrm Field", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/sugarcrm/fields/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowSugarcrm_Fields", "group": "Sugarcrm_Fields", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intSugarcrmField/index.js", "groupTitle": "Sugarcrm_Fields" }, { "type": "put", "url": "/api/integrations/sugarcrm/fields/{id}", "title": "Update an existing Sugarcrm Field", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/sugarcrm/fields/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateSugarcrm_Fields", "group": "Sugarcrm_Fields", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intSugarcrmField/index.js", "groupTitle": "Sugarcrm_Fields" }, { "type": "get", "url": "/api/system/process", "title": "Gets system information", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/system -v -u {name}:{password}", "type": "json" } ], "name": "GetSystemInformation", "group": "System_Information", "description": "

Motion returns the system information.

", "version": "0.0.0", "filename": "server/api/system/index.js", "groupTitle": "System_Information" }, { "type": "get", "url": "/api/system", "title": "Gets system information", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/system -v -u {name}:{password}", "type": "json" } ], "name": "GetSystemInformation", "group": "System_Information", "description": "

Motion returns the system information.

", "version": "0.0.0", "filename": "server/api/system/index.js", "groupTitle": "System_Information" }, { "type": "post", "url": "/api/tags", "title": "Creates a new Tag", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/tags -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateTags", "group": "Tags", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "color", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/tag/index.js", "groupTitle": "Tags" }, { "type": "delete", "url": "/api/tags/{id}", "title": "Deletes a Tag", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/tags/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteTags", "group": "Tags", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/tag/index.js", "groupTitle": "Tags" }, { "type": "get", "url": "/api/tags", "title": "Gets a list of Tags", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/tags -v -u {name}:{password}", "type": "json" } ], "name": "GetTags", "group": "Tags", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/tags?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/tags?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/tags?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/tags?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/tags?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/tag/index.js", "groupTitle": "Tags" }, { "type": "get", "url": "/api/tags/{id}", "title": "Gets a single Tag", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/tags/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowTags", "group": "Tags", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/tag/index.js", "groupTitle": "Tags" }, { "type": "put", "url": "/api/tags/{id}", "title": "Update an existing Tag", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/tags/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateTags", "group": "Tags", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/tag/index.js", "groupTitle": "Tags" }, { "type": "post", "url": "/api/teams/{id}/queues", "title": "Add queues to a team", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/teams/{id}/queues -d '{\"ids\": [1,2]}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "AddQueues", "group": "Teams", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/team/index.js", "groupTitle": "Teams" }, { "type": "post", "url": "/api/teams", "title": "Creates a new Team", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/teams -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateTeams", "group": "Teams", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/team/index.js", "groupTitle": "Teams" }, { "type": "delete", "url": "/api/teams/{id}", "title": "Deletes a Team", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/teams/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteTeams", "group": "Teams", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/team/index.js", "groupTitle": "Teams" }, { "type": "get", "url": "/api/teams/{id}/users", "title": "Gets agents from team", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/teams/{id}/users -v -u {name}:{password} -X GET", "type": "json" } ], "name": "GetAgents", "group": "Teams", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/team/index.js", "groupTitle": "Teams" }, { "type": "get", "url": "/api/teams/{id}/queues?channel={channel}", "title": "Gets Queues list", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/teams/{id}/queues?channel={channel} -v -u {name}:{password}", "type": "json" } ], "name": "GetQueues", "group": "Teams", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/team/index.js", "groupTitle": "Teams" }, { "type": "get", "url": "/api/teams", "title": "Gets a list of Teams", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/teams -v -u {name}:{password}", "type": "json" } ], "name": "GetTeams", "group": "Teams", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/teams?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/teams?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/teams?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/teams?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/teams?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/team/index.js", "groupTitle": "Teams" }, { "type": "delete", "url": "/api/teams/{id}/users", "title": "Removes agents from a team", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/teams/{id}/users?ids=1&ids=2 -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "RemoveAgents", "group": "Teams", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/team/index.js", "groupTitle": "Teams" }, { "type": "delete", "url": "/api/teams/{id}/queues", "title": "Remove queues to a team", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/teams/{id}/queues?channel=voice&ids=1&ids=2 -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "RemoveQueues", "group": "Teams", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/team/index.js", "groupTitle": "Teams" }, { "type": "delete", "url": "/api/sms/queues/{id}/teams", "title": "Remove teams from a queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/queues/{id}/teams -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "RemoveTeams", "group": "Teams", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsQueue/index.js", "groupTitle": "Teams" }, { "type": "delete", "url": "/api/fax/queues/{id}/teams", "title": "Remove teams from a queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/queues/{id}/teams -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "RemoveTeams", "group": "Teams", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxQueue/index.js", "groupTitle": "Teams" }, { "type": "delete", "url": "/api/openchannel/queues/{id}/teams", "title": "Remove teams from a queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/queues/{id}/teams -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "RemoveTeams", "group": "Teams", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelQueue/index.js", "groupTitle": "Teams" }, { "type": "delete", "url": "/api/mail/queues/{id}/teams", "title": "Remove teams from a queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/queues/{id}/teams -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "RemoveTeams", "group": "Teams", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailQueue/index.js", "groupTitle": "Teams" }, { "type": "delete", "url": "/api/chat/queues/{id}/teams", "title": "Remove teams from a queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/queues/{id}/teams -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "RemoveTeams", "group": "Teams", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatQueue/index.js", "groupTitle": "Teams" }, { "type": "delete", "url": "/api/voice/queues/{id}/teams", "title": "Remove teams from a queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/queues/{id}/teams -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "RemoveTeams", "group": "Teams", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceQueue/index.js", "groupTitle": "Teams" }, { "type": "get", "url": "/api/teams/{id}", "title": "Gets a single Team", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/teams/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowTeams", "group": "Teams", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/team/index.js", "groupTitle": "Teams" }, { "type": "post", "url": "/api/teams/{id}/users", "title": "Adds agents to a team", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/teams/{id}/users -d '{\"ids\": [1,2]}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addAgents", "group": "Teams", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/team/index.js", "groupTitle": "Teams" }, { "type": "put", "url": "/api/teams/{id}", "title": "Update an existing Team", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/teams/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateTeams", "group": "Teams", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/team/index.js", "groupTitle": "Teams" }, { "type": "post", "url": "/api/templates", "title": "Creates a new Template", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/templates -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateTemplates", "group": "Templates", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": true, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" }, { "group": "Body", "type": "Text", "optional": true, "field": "html", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/template/index.js", "groupTitle": "Templates" }, { "type": "delete", "url": "/api/templates/{id}", "title": "Deletes a Template", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/templates/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteTemplates", "group": "Templates", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/template/index.js", "groupTitle": "Templates" }, { "type": "get", "url": "/api/templates", "title": "Gets a list of Templates", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/templates -v -u {name}:{password}", "type": "json" } ], "name": "GetTemplates", "group": "Templates", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/templates?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/templates?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/templates?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/templates?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/templates?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/template/index.js", "groupTitle": "Templates" }, { "type": "get", "url": "/api/templates/{id}", "title": "Gets a single Template", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/templates/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowTemplates", "group": "Templates", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/template/index.js", "groupTitle": "Templates" }, { "type": "put", "url": "/api/templates/{id}", "title": "Update an existing Template", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/templates/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateTemplates", "group": "Templates", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/template/index.js", "groupTitle": "Templates" }, { "type": "post", "url": "/api/triggers", "title": "Creates a new Trigger", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/triggers -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateTriggers", "group": "Triggers", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": true, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "channel", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "status", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/trigger/index.js", "groupTitle": "Triggers" }, { "type": "delete", "url": "/api/triggers/{id}", "title": "Deletes a Trigger", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/triggers/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteTriggers", "group": "Triggers", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/trigger/index.js", "groupTitle": "Triggers" }, { "type": "get", "url": "/api/triggers", "title": "Gets a list of Triggers", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/triggers -v -u {name}:{password}", "type": "json" } ], "name": "GetTriggers", "group": "Triggers", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/triggers?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/triggers?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/triggers?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/triggers?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/triggers?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/trigger/index.js", "groupTitle": "Triggers" }, { "type": "get", "url": "/api/triggers/{id}", "title": "Gets a single Trigger", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/triggers/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowTriggers", "group": "Triggers", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/trigger/index.js", "groupTitle": "Triggers" }, { "type": "post", "url": "/api/triggers/{id}/actions", "title": "Creates new actions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/triggers/{id}/actions -d '{\"action\": \"contactManager\",\"data1\": \"1\"}' -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addAction", "group": "Triggers", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "Virtual", "optional": true, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "action", "description": "

Allowed values: contactManager, integration, motionbar, jscripty, urlForward, browser

" }, { "group": "Body", "type": "String", "optional": true, "field": "data1", "description": "

contactManager[ListId], integration[intName(zendesk)], motionbar[Popup(0),URL(1),WinApp(2)], urlForward[GET,POST], browser[TemplateId(0),URL(1)]

" }, { "group": "Body", "type": "String", "optional": true, "field": "data2", "description": "

integration[AccountId], motionbar[TemplateId,URL,WinAppPath], urlForward[URL]

" }, { "group": "Body", "type": "String", "optional": true, "field": "data3", "description": "

motionbar[NULL,NULL,WinAppArguments]

" }, { "group": "Body", "type": "String", "optional": true, "field": "data4", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "data5", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "data6", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/trigger/index.js", "groupTitle": "Triggers" }, { "type": "post", "url": "/api/triggers/{id}/all_conditions", "title": "Creates a new \"AND\"condition", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/triggers/{id}/all_conditions -d '{\"field\": \"name\", \"operator\": \"equal\", \"value\": \"John Doe\"}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addAllCondition", "group": "Triggers", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "Virtual", "optional": true, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "field", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "operator", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "value", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/trigger/index.js", "groupTitle": "Triggers" }, { "type": "post", "url": "/api/triggers/{id}/any_conditions", "title": "Creates a new \"OR\"condition", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/triggers/{id}/any_conditions -d '{\"field\": \"name\", \"operator\": \"equal\", \"value\": \"John Doe\"}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addAnyCondition", "group": "Triggers", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "Virtual", "optional": true, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "field", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "operator", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "value", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/trigger/index.js", "groupTitle": "Triggers" }, { "type": "get", "url": "/api/triggers/{id}/actions", "title": "Gets Trigger Actions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/triggers/{id}/actions -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getActions", "group": "Triggers", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/trigger/index.js", "groupTitle": "Triggers" }, { "type": "get", "url": "/api/triggers/{id}/all_conditions", "title": "Gets \"AND\" Trigger Conditions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/triggers/{id}/all_conditions -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getAllConditions", "group": "Triggers", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/trigger/index.js", "groupTitle": "Triggers" }, { "type": "get", "url": "/api/triggers/{id}/any_conditions", "title": "Gets \"OR\" Trigger Conditions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/triggers/{id}/any_conditions -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getAnyConditions", "group": "Triggers", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/trigger/index.js", "groupTitle": "Triggers" }, { "type": "put", "url": "/api/triggers/{id}", "title": "Update an existing Trigger", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/triggers/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateTriggers", "group": "Triggers", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/trigger/index.js", "groupTitle": "Triggers" }, { "type": "post", "url": "/api/trunks", "title": "Create a new trunk", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/trunks -v -u {name}:{password} -X POST", "type": "json" } ], "name": "Create", "group": "Trunks", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "name", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"friend\"", "\"user\"", "\"peer\"" ], "optional": false, "field": "type", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "context", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"ALLOWED_NOT_SCREENED\"", "\"ALLOWED_PASSED_SCREEN\"", "\"ALLOWED_FAILED_SCREEN\"", "\"ALLOWED\"", "\"PROHIB_NOT_SCREENED\"", "\"PROHIB_PASSED_SCREEN\"", "\"PROHIB_FAILED_SCREEN\"", "\"PROHIB\"" ], "optional": true, "field": "callingpres", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "deny", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "permit", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "secret", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "md5secret", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "remotesecret", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "transport", "description": "

String is deprecated. Please use an Array as ["udp", "tcp"]

" }, { "group": "Body", "type": "String", "allowedValues": [ "\"rfc2833\"", "\"info\"", "\"shortinfo\"", "\"inband\"", "\"auto\"" ], "optional": true, "field": "dtmfmode", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"", "\"nonat\"", "\"update\"", "\"outgoing\"" ], "optional": true, "field": "directmedia", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "directrtpsetup", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "directmediapermit", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "directmediadeny", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "nat", "description": "

String is deprecated. Please use an Array as ["force_rport", "comedia"]

" }, { "group": "Body", "type": "String", "optional": true, "field": "callgroup", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "namedcallgroup", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "pickupgroup", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "namedpickupgroup", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "language", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "tonezone", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "disallow", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "allow", "description": "

String is deprecated. Please use an Array as ["ulaw", "alaw", "alaw"]

" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "autoframing", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "insecure", "description": "

String is deprecated. Please use an Array as ["port", "invite"]

" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "trustrpid", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "trust_id_outbound", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"", "\"never\"" ], "optional": true, "field": "progressinband", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "promiscredir", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "useclientcode", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "accountcode", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "setvar", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "callerid", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "amaflags", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "callcounter", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "busylevel", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "allowoverlap", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "allowsubscribe", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "allowtransfer", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "ignoresdpversion", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "subscribecontext", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "template", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"", "\"always\"" ], "optional": true, "field": "videosupport", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "maxcallbitrate", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "rfc2833compensate", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "mailbox", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"accept\"", "\"refuse\"", "\"originate\"" ], "optional": true, "field": "session_timers", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "session_expires", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "session_minse", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"uac\"", "\"uas\"" ], "optional": true, "field": "session_refresher", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "t38pt_usertpsource", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "regexten", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "fromdomain", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "fromuser", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "port", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "qualify", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "keepalive", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "defaultip", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "defaultuser", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "rtptimeout", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "rtpholdtimeout", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "rtpkeepalive", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"", "\"pai\"" ], "optional": true, "field": "sendrpid", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "outboundproxy", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "callbackextension", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "timert1", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "timerb", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "qualifyfreq", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "contactpermit", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "contactdeny", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "contactacl", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "unsolicited_mailbox", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "use_q850_reason", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "maxforwards", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "encryption", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "avpf", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "force_avp", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "icesupport", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "dtlsenable", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"", "\"fingerprint\"", "\"certificate\"" ], "optional": true, "field": "dtlsverify", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "dtlsrekey", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "dtlscertfile", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "dtlsprivatekey", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "dtlscipher", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "dtlscafile", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "dtlscapath", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"active\"", "\"passive\"", "\"actpass\"" ], "optional": true, "field": "dtlssetup", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "dtlsfingerprint", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "usereqphone", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "recordonfeature", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "recordofffeature", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "call_limit", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "registertrying", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "subscribemwi", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "vmexten", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "mohinterpret", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "mohsuggest", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "parkinglot", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "host", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"", "\"nonat\"", "\"update\"", "\"update,nonat\"" ], "optional": true, "field": "canreinvite", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "registry", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "otherFields", "description": "" }, { "group": "Body", "type": "Boolean", "optional": false, "field": "active", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "t38pt_udptl", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/trunk/index.js", "groupTitle": "Trunks" }, { "type": "delete", "url": "/api/trunks/{id}", "title": "Deletes a trunk", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/trunks/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "Delete", "group": "Trunks", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/trunk/index.js", "groupTitle": "Trunks" }, { "type": "get", "url": "/api/trunks", "title": "Gets a list of Trunks", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/trunks -v -u {name}:{password}", "type": "json" } ], "name": "GetTrunks", "group": "Trunks", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/trunks?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/trunks?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/trunks?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/trunks?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/trunks?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/trunk/index.js", "groupTitle": "Trunks" }, { "type": "get", "url": "/api/trunks/{id}", "title": "Gets a single Trunk", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/trunks/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowTrunks", "group": "Trunks", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/trunk/index.js", "groupTitle": "Trunks" }, { "type": "put", "url": "/api/trunks/{id}", "title": "Update an existing trunk", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/trunks/{id} -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "Update", "group": "Trunks", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/trunk/index.js", "groupTitle": "Trunks" }, { "type": "post", "url": "/api/users/{id}/contacts", "title": "Add contacts to a user", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/users/{id}/contacts -d '{\"ids\": [1,2]}' -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "AddContacts", "group": "Users", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/user/index.js", "groupTitle": "Users" }, { "type": "post", "url": "/api/users/{id}/queues", "title": "Add queues to an agent", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/users/{id}/queues -d '{\"ids\": [1,2], \"penalty\": 2}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "AddQueues", "group": "Users", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/user/index.js", "groupTitle": "Users" }, { "type": "post", "url": "/api/users/{id}/teams", "title": "Add teams to an agent", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/users/{id}/teams -d '{\"ids\": [1,2]}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "AddTeams", "group": "Users", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/user/index.js", "groupTitle": "Users" }, { "type": "post", "url": "/api/users/create_many", "title": "Creates many Users", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/users/create_many -d '[{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}]' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "BulkCreateUsers", "group": "Users", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "name", "description": "

The name of the user

" }, { "group": "Body", "type": "String", "optional": false, "field": "fullname", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "email", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"admin\"", "\"user\"", "\"agent\"", "\"telephone\"" ], "optional": false, "field": "role", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "password", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "provider", "description": "" }, { "group": "Body", "type": "Integer", "optional": false, "field": "internal", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "salt", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "phone", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "mobile", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "address", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "zipcode", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "userpic", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "city", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "country", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "online", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "lastLoginAt", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "voicePause", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "chatPause", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "mailPause", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "faxPause", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "smsPause", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "openchannelPause", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "pauseType", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "lastPauseAt", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "chatCapacity", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "mailCapacity", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "faxCapacity", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "smsCapacity", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "openchannelCapacity", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "phoneBarAutoAnswer", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "phoneBarEnableSettings", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "phoneBarListenPort", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "phoneBarExpires", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "phoneBarRemoteControl", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "phoneBarRemoteControlPort", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "phoneBarEnableRecording", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "phoneBarRingInUse", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "chanspy", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "host", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "ipaddr", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "port", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "regseconds", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "fullcontact", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "regserver", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "useragent", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "lastms", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"friend\"", "\"user\"", "\"peer\"" ], "optional": true, "field": "type", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "context", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"ALLOWED_NOT_SCREENED\"", "\"ALLOWED_PASSED_SCREEN\"", "\"ALLOWED_FAILED_SCREEN\"", "\"ALLOWED\"", "\"PROHIB_NOT_SCREENED\"", "\"PROHIB_PASSED_SCREEN\"", "\"PROHIB_FAILED_SCREEN\"", "\"PROHIB\"" ], "optional": true, "field": "callingpres", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "deny", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "permit", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "secret", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "md5secret", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "remotesecret", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "transport", "description": "

String is deprecated. Please use an Array as ["udp", "tcp"]

" }, { "group": "Body", "type": "String", "allowedValues": [ "\"rfc2833\"", "\"info\"", "\"shortinfo\"", "\"inband\"", "\"auto\"" ], "optional": true, "field": "dtmfmode", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"", "\"nonat\"", "\"update\"", "\"outgoing\"" ], "optional": true, "field": "directmedia", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "directrtpsetup", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "directmediapermit", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "directmediadeny", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "nat", "description": "

String is deprecated. Please use an Array as ["force_rport", "comedia"]

" }, { "group": "Body", "type": "String", "optional": true, "field": "callgroup", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "namedcallgroup", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "pickupgroup", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "namedpickupgroup", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "language", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "tonezone", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "disallow", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "allow", "description": "

String is deprecated. Please use an Array as ["ulaw", "alaw", "gsm"]

" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "autoframing", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "insecure", "description": "

String is deprecated. Please use an Array as ["port", "invite"]

" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "trustrpid", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "trust_id_outbound", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"", "\"never\"" ], "optional": true, "field": "progressinband", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "promiscredir", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "useclientcode", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "accountcode", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "setvar", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "callerid", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "amaflags", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "callcounter", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "busylevel", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "allowoverlap", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "allowsubscribe", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "allowtransfer", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "ignoresdpversion", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "subscribecontext", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "template", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"", "\"always\"" ], "optional": true, "field": "videosupport", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "maxcallbitrate", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "rfc2833compensate", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "mailbox", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"accept\"", "\"refuse\"", "\"originate\"" ], "optional": true, "field": "session_timers", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "session_expires", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "session_minse", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"uac\"", "\"uas\"" ], "optional": true, "field": "session_refresher", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "t38pt_usertpsource", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "regexten", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "fromdomain", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "fromuser", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "qualify", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "keepalive", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "defaultip", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "defaultuser", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "rtptimeout", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "rtpholdtimeout", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "rtpkeepalive", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "sendrpid", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "outboundproxy", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "callbackextension", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "timert1", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "timerb", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "qualifyfreq", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "contactpermit", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "contactdeny", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "contactacl", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "unsolicited_mailbox", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "use_q850_reason", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "maxforwards", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "encryption", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "avpf", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "force_avp", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "icesupport", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "dtlsenable", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"", "\"fingerprint\"", "\"certificate\"" ], "optional": true, "field": "dtlsverify", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "dtlsrekey", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "dtlscertfile", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "dtlsprivatekey", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "dtlscipher", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "dtlscafile", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "dtlscapath", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"active\"", "\"passive\"", "\"actpass\"" ], "optional": true, "field": "dtlssetup", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "dtlsfingerprint", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "usereqphone", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "recordonfeature", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "recordofffeature", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "call_limit", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "registertrying", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "subscribemwi", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "vmexten", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "mohinterpret", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "mohsuggest", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "parkinglot", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"", "\"nonat\"", "\"update\"", "\"update,nonat\"" ], "optional": true, "field": "canreinvite", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "loginInPause", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "resetPasswordToken", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "resetPasswordExpires", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "showWebBar", "description": "" }, { "group": "Body", "type": "Text", "optional": true, "field": "permissions", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "phoneBarUnconditionalNumber", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "phoneBarNoReplyNumber", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "phoneBarBusyNumber", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "phoneBarUnconditional", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "phoneBarNoReply", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "phoneBarBusy", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "phoneBarDnd", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "phoneBarUnansweredCallBadge", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "phoneBarEnableDtmfTone", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "phoneBarAutoAnswerDelay", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "extensionMonitor", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "crudPermissions", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "rtcp_mux", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "allowmessenger", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "phoneBarOutboundProxy", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "passwordResetAt", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/user/index.js", "groupTitle": "Users" }, { "type": "put", "url": "/api/users/{id}/password", "title": "Change user password", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/users/{id}/password -d '{\"oldPassword\": \"1234\", \"newPassword\": \"5678\"}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "ChangePwd", "group": "Users", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/user/index.js", "groupTitle": "Users" }, { "type": "post", "url": "/api/users", "title": "Create a new user", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/users -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "Create", "group": "Users", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/user/index.js", "groupTitle": "Users" }, { "type": "delete", "url": "/api/users/{id}", "title": "Deletes a user", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/users/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "Delete", "group": "Users", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/user/index.js", "groupTitle": "Users" }, { "type": "get", "url": "/api/users/describe", "title": "Gets table info about Users", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/users/describe -v -u {name}:{password}", "type": "json" } ], "name": "DescribeUsers", "group": "Users", "description": "

Motion will return a HTTP status code 200 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/user/index.js", "groupTitle": "Users" }, { "type": "get", "url": "/api/users/{id}/agents", "title": "GetAgents", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/users/{id}/agents -v -u {name}:{password}", "type": "json" } ], "name": "GetAgents", "group": "Users", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/user/index.js", "groupTitle": "Users" }, { "type": "get", "url": "/api/users/{id}/groups", "title": "GetChatGroups", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/users/{id}/groups -v -u {name}:{password}", "type": "json" } ], "name": "GetChatGroups", "group": "Users", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/user/index.js", "groupTitle": "Users" }, { "type": "get", "url": "/api/users/{id}/chat/interactions", "title": "GetChatInteractions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/users/{id}/chat/interactions -v -u {name}:{password}", "type": "json" } ], "name": "GetChatInteractions", "group": "Users", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/user/index.js", "groupTitle": "Users" }, { "type": "get", "url": "/api/users/{id}/contacts", "title": "GetContacts", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/users/{id}/contacts -v -u {name}:{password}", "type": "json" } ], "name": "GetContacts", "group": "Users", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/user/index.js", "groupTitle": "Users" }, { "type": "get", "url": "/api/users/{id}/fax/interactions", "title": "GetFaxInteractions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/users/{id}/fax/interactions -v -u {name}:{password}", "type": "json" } ], "name": "GetFaxInteractions", "group": "Users", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/user/index.js", "groupTitle": "Users" }, { "type": "get", "url": "/api/users/{id}/lists", "title": "GetLists", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/users/{id}/lists -v -u {name}:{password}", "type": "json" } ], "name": "GetLists", "group": "Users", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/user/index.js", "groupTitle": "Users" }, { "type": "get", "url": "/api/users/{id}/mail/interactions", "title": "GetMailInteractions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/users/{id}/mail/interactions -v -u {name}:{password}", "type": "json" } ], "name": "GetMailInteractions", "group": "Users", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/user/index.js", "groupTitle": "Users" }, { "type": "get", "url": "/api/users/{id}/openchannel/interactions", "title": "GetOpenchannelInteractions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/users/{id}/openchannel/interactions -v -u {name}:{password}", "type": "json" } ], "name": "GetOpenchannelInteractions", "group": "Users", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/user/index.js", "groupTitle": "Users" }, { "type": "get", "url": "/api/users/{id}/queues?channel={channel}", "title": "Gets Queues list", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/users/{id}/queues/?channel={channel} -v -u {name}:{password}", "type": "json" } ], "name": "GetQueues", "group": "Users", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/user/index.js", "groupTitle": "Users" }, { "type": "get", "url": "/api/users/{id}/recordings", "title": "GetRecordings", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/users/{id}/recordings -v -u {name}:{password}", "type": "json" } ], "name": "GetRecordings", "group": "Users", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/user/index.js", "groupTitle": "Users" }, { "type": "get", "url": "/api/users/{id}/sms/interactions", "title": "GetSmsInteractions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/users/{id}/sms/interactions -v -u {name}:{password}", "type": "json" } ], "name": "GetSmsInteractions", "group": "Users", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/user/index.js", "groupTitle": "Users" }, { "type": "get", "url": "/api/users/{id}/teams", "title": "GetTeams", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/users/{id}/teams -v -u {name}:{password}", "type": "json" } ], "name": "GetTeams", "group": "Users", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/user/index.js", "groupTitle": "Users" }, { "type": "get", "url": "/api/users", "title": "Gets a list of Users", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/users -v -u {name}:{password}", "type": "json" } ], "name": "GetUsers", "group": "Users", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/users?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/users?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/users?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/users?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/users?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/user/index.js", "groupTitle": "Users" }, { "type": "get", "url": "/api/users/{id}/queues_rt", "title": "GetVoiceQueuesRt", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/users/{id}/queues_rt -v -u {name}:{password}", "type": "json" } ], "name": "GetVoiceQueuesRt", "group": "Users", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/user/index.js", "groupTitle": "Users" }, { "type": "post", "url": "/api/users/{id}/login", "title": "Login", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/users/{id}/login -v -u {name}:{password}", "type": "json" } ], "name": "Login", "group": "Users", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/user/index.js", "groupTitle": "Users" }, { "type": "post", "url": "/api/users/{id}/logout", "title": "Logout", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/users/{id}/logout -v -u {name}:{password}", "type": "json" } ], "name": "Logout", "group": "Users", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/user/index.js", "groupTitle": "Users" }, { "type": "post", "url": "/api/users/{id}/pause", "title": "Pause", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/users/{id}/pause -v -u {name}:{password}", "type": "json" } ], "name": "Pause", "group": "Users", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/user/index.js", "groupTitle": "Users" }, { "type": "delete", "url": "/api/users/{id}/queues", "title": "Remove queues to an agent", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/users/{id}/queues?ids=1&ids=2 -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "RemoveQueues", "group": "Users", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/user/index.js", "groupTitle": "Users" }, { "type": "delete", "url": "/api/users/{id}/teams", "title": "Removes teams from an agent", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/users/{id}/teams?ids=1&ids=2 -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "RemoveTeams", "group": "Users", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/user/index.js", "groupTitle": "Users" }, { "type": "get", "url": "/api/users/{id}", "title": "Gets a single User", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/users/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowUsers", "group": "Users", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/user/index.js", "groupTitle": "Users" }, { "type": "post", "url": "/api/users/{id}/unpause", "title": "Unpause", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/users/{id}/unpause -v -u {name}:{password}", "type": "json" } ], "name": "Unpause", "group": "Users", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/user/index.js", "groupTitle": "Users" }, { "type": "post", "url": "/api/users/{id}/avatar", "title": "Add avatar", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/users/{id}/avatar -H 'Content-Type: multipart/form-data' -F 'file=@{filename}' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addAvatar", "group": "Users", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/user/index.js", "groupTitle": "Users" }, { "type": "get", "url": "/api/users/{id}/avatar", "title": "Get avatar", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/users/{id}/avatar -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getAvatar", "group": "Users", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/user/index.js", "groupTitle": "Users" }, { "type": "put", "url": "/api/users/{id}", "title": "Update an existing User", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/users/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateUsers", "group": "Users", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/user/index.js", "groupTitle": "Users" }, { "type": "post", "url": "/api/variables", "title": "Creates a new Variable", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/variables -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateVariables", "group": "Variables", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/variable/index.js", "groupTitle": "Variables" }, { "type": "delete", "url": "/api/variables/{id}", "title": "Deletes a Variable", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/variables/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteVariables", "group": "Variables", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/variable/index.js", "groupTitle": "Variables" }, { "type": "get", "url": "/api/variables", "title": "Gets a list of Variables", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/variables -v -u {name}:{password}", "type": "json" } ], "name": "GetVariables", "group": "Variables", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/variables?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/variables?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/variables?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/variables?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/variables?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/variable/index.js", "groupTitle": "Variables" }, { "type": "get", "url": "/api/variables/{id}", "title": "Gets a single Variable", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/variables/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowVariables", "group": "Variables", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/variable/index.js", "groupTitle": "Variables" }, { "type": "put", "url": "/api/variables/{id}", "title": "Update an existing Variable", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/variables/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateVariables", "group": "Variables", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/variable/index.js", "groupTitle": "Variables" }, { "type": "get", "url": "/api/version/fetch", "title": "Fetch git version", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/version/fetch -v -u {name}:{password}", "type": "json" } ], "name": "FetchVersion", "group": "Version", "description": "

Motion run the following command: git fetch origin master

", "version": "0.0.0", "filename": "server/api/version/index.js", "groupTitle": "Version" }, { "type": "get", "url": "/api/version", "title": "Gets version", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/version -v -u {name}:{password}", "type": "json" } ], "name": "GetVersion", "group": "Version", "description": "

Motion returns the current and latest motion version.

", "version": "0.0.0", "filename": "server/api/version/index.js", "groupTitle": "Version" }, { "type": "get", "url": "/api/version/migrations", "title": "Launch database migrations", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/version/migrations -v -u {name}:{password}", "type": "json" } ], "name": "MigrateVersion", "group": "Version", "description": "

Motion launch the database migrations, according to the application version

", "version": "0.0.0", "filename": "server/api/version/index.js", "groupTitle": "Version" }, { "type": "get", "url": "/api/version/pull", "title": "Pull git version", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/version/pull -v -u {name}:{password}", "type": "json" } ], "name": "PullVersion", "group": "Version", "description": "

Motion run the following command: git pull

", "version": "0.0.0", "filename": "server/api/version/index.js", "groupTitle": "Version" }, { "type": "get", "url": "/api/version/reset", "title": "Reset git version", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/version/reset -v -u {name}:{password}", "type": "json" } ], "name": "ResetVersion", "group": "Version", "description": "

Motion run the following command: git reset --hard FETCH_HEAD

", "version": "0.0.0", "filename": "server/api/version/index.js", "groupTitle": "Version" }, { "type": "get", "url": "/api/version/restart", "title": "Restart motion2 after update", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/version/restart -v -u {name}:{password}", "type": "json" } ], "name": "RestartVersion", "group": "Version", "description": "

Motion run the following command: pm2 restart motion

", "version": "0.0.0", "filename": "server/api/version/index.js", "groupTitle": "Version" }, { "type": "get", "url": "/api/voice/agents/reports/describe", "title": "Gets table info about Agent Reports", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/agents/reports/describe -v -u {name}:{password}", "type": "json" } ], "name": "DescribeAgent_Reports", "group": "Voice_Agent_Reports", "description": "

Motion will return a HTTP status code 200 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceAgentReport/index.js", "groupTitle": "Voice_Agent_Reports" }, { "type": "get", "url": "/api/voice/agents/reports", "title": "Gets a list of Agent Reports", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/agents/reports -v -u {name}:{password}", "type": "json" } ], "name": "GetAgent_Reports", "group": "Voice_Agent_Reports", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/voice/agents/reports?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/voice/agents/reports?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/voice/agents/reports?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/voice/agents/reports?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/voice/agents/reports?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/voiceAgentReport/index.js", "groupTitle": "Voice_Agent_Reports" }, { "type": "get", "url": "/api/voice/agents/reports/{id}", "title": "Gets a single Agent Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/agents/reports/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowAgent_Reports", "group": "Voice_Agent_Reports", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceAgentReport/index.js", "groupTitle": "Voice_Agent_Reports" }, { "type": "get", "url": "/api/voice/calls/reports/describe", "title": "Gets table info about Call Reports", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/calls/reports/describe -v -u {name}:{password}", "type": "json" } ], "name": "DescribeCall_Reports", "group": "Voice_Call_Reports", "description": "

Motion will return a HTTP status code 200 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceCallReport/index.js", "groupTitle": "Voice_Call_Reports" }, { "type": "get", "url": "/api/voice/calls/reports", "title": "Gets a list of Call Reports", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/calls/reports -v -u {name}:{password}", "type": "json" } ], "name": "GetCall_Reports", "group": "Voice_Call_Reports", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/voice/calls/reports?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/voice/calls/reports?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/voice/calls/reports?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/voice/calls/reports?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/voice/calls/reports?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/voiceCallReport/index.js", "groupTitle": "Voice_Call_Reports" }, { "type": "get", "url": "/api/voice/calls/reports/{id}", "title": "Gets a single Call Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/calls/reports/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowCall_Reports", "group": "Voice_Call_Reports", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceCallReport/index.js", "groupTitle": "Voice_Call_Reports" }, { "type": "put", "url": "/api/voice/calls/reports/{id}", "title": "Update a single cdr", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/calls/reports/{id} -d '{\"userDispositio\": \"OK\"}' -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "update", "group": "Voice_Call_Reports", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceCallReport/index.js", "groupTitle": "Voice_Call_Reports" }, { "type": "post", "url": "/api/voice/chanspy", "title": "Creates a new ChanSpy", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/chanspy -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateChanSpy", "group": "Voice_ChanSpy", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": true, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "prefix", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "options", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "auth", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "password", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "record", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "recordingFormat", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceChanSpy/index.js", "groupTitle": "Voice_ChanSpy" }, { "type": "delete", "url": "/api/voice/chanspy/{id}", "title": "Deletes a ChanSpy", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/chanspy/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteChanSpy", "group": "Voice_ChanSpy", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceChanSpy/index.js", "groupTitle": "Voice_ChanSpy" }, { "type": "get", "url": "/api/voice/chanspy", "title": "Gets a list of ChanSpy", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/chanspy -v -u {name}:{password}", "type": "json" } ], "name": "GetChanSpy", "group": "Voice_ChanSpy", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/voice/chanspy?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/voice/chanspy?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/voice/chanspy?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/voice/chanspy?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/voice/chanspy?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/voiceChanSpy/index.js", "groupTitle": "Voice_ChanSpy" }, { "type": "get", "url": "/api/voice/chanspy/{id}", "title": "Gets a single ChanSpy", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/chanspy/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowChanSpy", "group": "Voice_ChanSpy", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceChanSpy/index.js", "groupTitle": "Voice_ChanSpy" }, { "type": "put", "url": "/api/voice/chanspy/{id}", "title": "Update an existing ChanSpy", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/chanspy/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateChanSpy", "group": "Voice_ChanSpy", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceChanSpy/index.js", "groupTitle": "Voice_ChanSpy" }, { "type": "post", "url": "/api/voice/contexts", "title": "Create a new context", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/contexts -v -u {name}:{password} -X POST", "type": "json" } ], "name": "Create", "group": "Voice_Contexts", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": true, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "defaultEntry", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceContext/index.js", "groupTitle": "Voice_Contexts" }, { "type": "delete", "url": "/api/voice/contexts/{id}", "title": "Deletes a context", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/contexts/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "Delete", "group": "Voice_Contexts", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceContext/index.js", "groupTitle": "Voice_Contexts" }, { "type": "get", "url": "/api/voice/contexts", "title": "Gets a list of Contexts", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/contexts -v -u {name}:{password}", "type": "json" } ], "name": "GetContexts", "group": "Voice_Contexts", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/voice/contexts?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/voice/contexts?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/voice/contexts?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/voice/contexts?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/voice/contexts?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/voiceContext/index.js", "groupTitle": "Voice_Contexts" }, { "type": "get", "url": "/api/voice/contexts/{id}", "title": "Gets a single Context", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/contexts/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowContexts", "group": "Voice_Contexts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceContext/index.js", "groupTitle": "Voice_Contexts" }, { "type": "put", "url": "/api/voice/contexts/{id}", "title": "Update an existing context", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/contexts/{id} -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "Update", "group": "Voice_Contexts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceContext/index.js", "groupTitle": "Voice_Contexts" }, { "type": "get", "url": "/api/voice/dials/reports/describe", "title": "Gets table info about Dial Reports", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/dials/reports/describe -v -u {name}:{password}", "type": "json" } ], "name": "DescribeDial_Reports", "group": "Voice_Dial_Reports", "description": "

Motion will return a HTTP status code 200 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceDialReport/index.js", "groupTitle": "Voice_Dial_Reports" }, { "type": "get", "url": "/api/voice/dials/reports", "title": "Gets a list of Dial Reports", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/dials/reports -v -u {name}:{password}", "type": "json" } ], "name": "GetDial_Reports", "group": "Voice_Dial_Reports", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/voice/dials/reports?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/voice/dials/reports?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/voice/dials/reports?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/voice/dials/reports?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/voice/dials/reports?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/voiceDialReport/index.js", "groupTitle": "Voice_Dial_Reports" }, { "type": "get", "url": "/api/voice/dials/reports/{id}", "title": "Gets a single Dial Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/dials/reports/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowDial_Reports", "group": "Voice_Dial_Reports", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceDialReport/index.js", "groupTitle": "Voice_Dial_Reports" }, { "type": "post", "url": "/api/voice/dispositions", "title": "Creates a new Disposition", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/dispositions -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateDispositions", "group": "Voice_Dispositions", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "name", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceDisposition/index.js", "groupTitle": "Voice_Dispositions" }, { "type": "delete", "url": "/api/voice/dispositions/{id}", "title": "Deletes a Disposition", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/dispositions/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteDispositions", "group": "Voice_Dispositions", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceDisposition/index.js", "groupTitle": "Voice_Dispositions" }, { "type": "get", "url": "/api/voice/dispositions", "title": "Gets a list of Dispositions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/dispositions -v -u {name}:{password}", "type": "json" } ], "name": "GetDispositions", "group": "Voice_Dispositions", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/voice/dispositions?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/voice/dispositions?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/voice/dispositions?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/voice/dispositions?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/voice/dispositions?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/voiceDisposition/index.js", "groupTitle": "Voice_Dispositions" }, { "type": "get", "url": "/api/voice/dispositions/{id}", "title": "Gets a single Disposition", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/dispositions/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowDispositions", "group": "Voice_Dispositions", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceDisposition/index.js", "groupTitle": "Voice_Dispositions" }, { "type": "put", "url": "/api/voice/dispositions/{id}", "title": "Update an existing Disposition", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/dispositions/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateDispositions", "group": "Voice_Dispositions", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceDisposition/index.js", "groupTitle": "Voice_Dispositions" }, { "type": "delete", "url": "/api/voice/extensions/{id}", "title": "Deletes a Extension", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/extensions/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteExtensions", "group": "Voice_Extensions", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceExtension/index.js", "groupTitle": "Voice_Extensions" }, { "type": "get", "url": "/api/voice/extensions", "title": "Gets a list of Extensions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/extensions -v -u {name}:{password}", "type": "json" } ], "name": "GetExtensions", "group": "Voice_Extensions", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/voice/extensions?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/voice/extensions?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/voice/extensions?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/voice/extensions?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/voice/extensions?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/voiceExtension/index.js", "groupTitle": "Voice_Extensions" }, { "type": "get", "url": "/api/voice/extensions/{id}", "title": "Gets a single Extension", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/extensions/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowExtensions", "group": "Voice_Extensions", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceExtension/index.js", "groupTitle": "Voice_Extensions" }, { "type": "post", "url": "/api/voice/extensions", "title": "Create new applications", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/extensions/{id}/applications -d '[{\"app\": \"Set\", \"appdata\": \"CALLERDNID=${CALLER(dnid)}\"}]' -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addApplications", "group": "Voice_Extensions", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceExtension/index.js", "groupTitle": "Voice_Extensions" }, { "type": "post", "url": "/api/voice/extensions", "title": "Create an extension", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/extensions -d '{\"exten\": \"12345\", \"context\": \"from-custom\"}' -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "create", "group": "Voice_Extensions", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceExtension/index.js", "groupTitle": "Voice_Extensions" }, { "type": "put", "url": "/api/voice/extensions/{id}", "title": "Update an extension", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/extensions/{id} -d '{\"exten\": \"12345\", \"context\": \"from-custom\"}' -H 'Content-Type: application/json' -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "update", "group": "Voice_Extensions", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceExtension/index.js", "groupTitle": "Voice_Extensions" }, { "type": "post", "url": "/api/voice/mohs", "title": "Create a new a new MOH", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/mohs -d '{\"name\": \"xmas_musics\"}' -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "AddMoh", "group": "Voice_MOHs", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceMusicOnHold/index.js", "groupTitle": "Voice_MOHs" }, { "type": "post", "url": "/api/voice/mohs/{id}/sounds", "title": "Add sound to MOH", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/mohs/{id}/sounds -d '{\"id\": 1}' -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "AddSound", "group": "Voice_MOHs", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceMusicOnHold/index.js", "groupTitle": "Voice_MOHs" }, { "type": "delete", "url": "/api/voice/mohs/{id}", "title": "Deletes an MOH", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/mohs/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DestroyMoh", "group": "Voice_MOHs", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceMusicOnHold/index.js", "groupTitle": "Voice_MOHs" }, { "type": "get", "url": "/api/voice/mohs", "title": "Gets a list of Music On Holds", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/mohs -v -u {name}:{password}", "type": "json" } ], "name": "GetMusic_On_Holds", "group": "Voice_MOHs", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/voice/mohs?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/voice/mohs?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/voice/mohs?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/voice/mohs?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/voice/mohs?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/voiceMusicOnHold/index.js", "groupTitle": "Voice_MOHs" }, { "type": "get", "url": "/api/voice/mohs/{id}/sounds", "title": "Gets sounds from MOH", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/mohs/{id}/sounds -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "GetSounds", "group": "Voice_MOHs", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceMusicOnHold/index.js", "groupTitle": "Voice_MOHs" }, { "type": "delete", "url": "/api/voice/mohs/{id}/sounds/{id2}", "title": "Remove sound from MOH", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/mohs/{id}/sounds/{id2} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "RemoveSound", "group": "Voice_MOHs", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceMusicOnHold/index.js", "groupTitle": "Voice_MOHs" }, { "type": "get", "url": "/api/voice/mohs/{id}", "title": "Gets a single Music On Hold", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/mohs/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowMusic_On_Holds", "group": "Voice_MOHs", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceMusicOnHold/index.js", "groupTitle": "Voice_MOHs" }, { "type": "put", "url": "/api/voice/mohs/{id}", "title": "Update an existing Music On Hold", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/mohs/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateMusic_On_Holds", "group": "Voice_MOHs", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceMusicOnHold/index.js", "groupTitle": "Voice_MOHs" }, { "type": "post", "url": "/api/voice/mails", "title": "Creates a new Mail", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/mails -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateMails", "group": "Voice_Mails", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": true, "field": "customer_id", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "context", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "mailbox", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "password", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "fullname", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "email", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "pager", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "tz", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": false, "field": "attach", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": false, "field": "saycid", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "dialout", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "callback", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": false, "field": "review", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": false, "field": "operator", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": false, "field": "envelope", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": false, "field": "sayduration", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "saydurationm", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": false, "field": "sendvoicemail", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": false, "field": "delete", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": false, "field": "nextaftercmd", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": false, "field": "forcename", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": false, "field": "forcegreetings", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": false, "field": "hidefromdir", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "stamp", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "emailsubject", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "emailbody", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "name", "description": "" }, { "group": "Body", "type": "Integer", "optional": false, "field": "maxsecs", "description": "" }, { "group": "Body", "type": "Integer", "optional": false, "field": "maxmsg", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceMail/index.js", "groupTitle": "Voice_Mails" }, { "type": "delete", "url": "/api/voice/mails/{id}", "title": "Deletes a Mail", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/mails/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteMails", "group": "Voice_Mails", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceMail/index.js", "groupTitle": "Voice_Mails" }, { "type": "get", "url": "/api/voice/mails", "title": "Gets a list of Mails", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/mails -v -u {name}:{password}", "type": "json" } ], "name": "GetMails", "group": "Voice_Mails", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/voice/mails?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/voice/mails?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/voice/mails?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/voice/mails?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/voice/mails?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/voiceMail/index.js", "groupTitle": "Voice_Mails" }, { "type": "get", "url": "/api/voice/mails/{id}", "title": "Gets a single Mail", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/mails/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowMails", "group": "Voice_Mails", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceMail/index.js", "groupTitle": "Voice_Mails" }, { "type": "get", "url": "/api/voice/mails/{id}/messages", "title": "Gets voice mail messages", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/mails/{id}/messages -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getMessages", "group": "Voice_Mails", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceMail/index.js", "groupTitle": "Voice_Mails" }, { "type": "put", "url": "/api/voice/mails/{id}", "title": "Update an existing Mail", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/mails/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateMails", "group": "Voice_Mails", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceMail/index.js", "groupTitle": "Voice_Mails" }, { "type": "post", "url": "/api/voice/mails/messages", "title": "Creates a new Message", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/mails/messages -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateMessages", "group": "Voice_Messages", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "Virtual", "optional": true, "field": "name", "description": "" }, { "group": "Body", "type": "Integer", "optional": false, "field": "msgnum", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "dir", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "context", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "macrocontext", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "callerid", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "origtime", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "duration", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "mailboxuser", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "mailboxcontext", "description": "" }, { "group": "Body", "type": "Blob", "optional": true, "field": "recording", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "flag", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "msg_id", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "stamp", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceMailMessage/index.js", "groupTitle": "Voice_Messages" }, { "type": "delete", "url": "/api/voice/mails/messages/{id}", "title": "Deletes a Message", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/mails/messages/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteMessages", "group": "Voice_Messages", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceMailMessage/index.js", "groupTitle": "Voice_Messages" }, { "type": "get", "url": "/api/voice/mails/messages", "title": "Gets a list of Messages", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/mails/messages -v -u {name}:{password}", "type": "json" } ], "name": "GetMessages", "group": "Voice_Messages", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/voice/mails/messages?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/voice/mails/messages?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/voice/mails/messages?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/voice/mails/messages?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/voice/mails/messages?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/voiceMailMessage/index.js", "groupTitle": "Voice_Messages" }, { "type": "get", "url": "/api/voice/mails/messages/{id}", "title": "Gets a single Message", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/mails/messages/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowMessages", "group": "Voice_Messages", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceMailMessage/index.js", "groupTitle": "Voice_Messages" }, { "type": "get", "url": "voice/mails/messages/{id}/download", "title": "Download Voice Message", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}voice/mails/messages/{id}/download -v -u {name}:{password} -X GET", "type": "json" } ], "name": "download", "group": "Voice_Messages", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceMailMessage/index.js", "groupTitle": "Voice_Messages" }, { "type": "put", "url": "/api/voice/mails/messages/{id}", "title": "Update an existing Message", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/mails/messages/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateMessages", "group": "Voice_Messages", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceMailMessage/index.js", "groupTitle": "Voice_Messages" }, { "type": "get", "url": "/api/voice/queues/reports/describe", "title": "Gets table info about Queue Reports", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/queues/reports/describe -v -u {name}:{password}", "type": "json" } ], "name": "DescribeQueue_Reports", "group": "Voice_Queue_Reports", "description": "

Motion will return a HTTP status code 200 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceQueueReport/index.js", "groupTitle": "Voice_Queue_Reports" }, { "type": "get", "url": "/api/voice/queues/reports", "title": "Gets a list of Queue Reports", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/queues/reports -v -u {name}:{password}", "type": "json" } ], "name": "GetQueue_Reports", "group": "Voice_Queue_Reports", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/voice/queues/reports?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/voice/queues/reports?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/voice/queues/reports?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/voice/queues/reports?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/voice/queues/reports?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/voiceQueueReport/index.js", "groupTitle": "Voice_Queue_Reports" }, { "type": "get", "url": "/api/voice/queues/reports/{id}", "title": "Gets a single Queue Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/queues/reports/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowQueue_Reports", "group": "Voice_Queue_Reports", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceQueueReport/index.js", "groupTitle": "Voice_Queue_Reports" }, { "type": "post", "url": "/api/voice/queues/{id}/users", "title": "Add agents to queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/queues/{id}/users -d '{\"ids\": [1,2], \"penalty\": 2}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "AddAgents", "group": "Voice_Queues", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceQueue/index.js", "groupTitle": "Voice_Queues" }, { "type": "post", "url": "/api/voice/queues/{id}/blacklists", "title": "Add blacklists to a queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/queues/{id}/blacklists -d '{\"ids\": [1,2]}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "AddBlackLists", "group": "Voice_Queues", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceQueue/index.js", "groupTitle": "Voice_Queues" }, { "type": "post", "url": "/api/voice/queues/{id}/lists", "title": "Add lists to a queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/queues/{id}/lists -d '{\"ids\": [1,2]}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "AddLists", "group": "Voice_Queues", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceQueue/index.js", "groupTitle": "Voice_Queues" }, { "type": "post", "url": "/api/voice/queues/{id}/teams", "title": "Add teams to queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/queues/{id}/teams -d '{\"ids\": [1,2]}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "AddTeams", "group": "Voice_Queues", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceQueue/index.js", "groupTitle": "Voice_Queues" }, { "type": "post", "url": "/api/voice/queues", "title": "Creates a new Queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/queues -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateQueues", "group": "Voice_Queues", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "name", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"inbound\"", "\"outbound\"" ], "optional": false, "field": "type", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "musiconhold", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "announce", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"ringall\"", "\"leastrecent\"", "\"fewestcalls\"", "\"random\"", "\"rrmemory\"", "\"linear\"", "\"wrandom\"", "\"rrordered\"" ], "optional": false, "field": "strategy", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "servicelevel", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "context", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "penaltymemberslimit", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "timeout", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "retry", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "timeoutpriority", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "weight", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "wrapuptime", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "autofill", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"", "\"all\"" ], "optional": true, "field": "autopause", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "autopausedelay", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "autopausebusy", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "autopauseunavail", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "maxlen", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "setinterfacevar", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "setqueueentryvar", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "setqueuevar", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "eventmemberstatus", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "membermacro", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "membergosub", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "announce_frequency", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "min_announce_frequency", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "periodic_announce_frequency", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "random_periodic_announce", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "relative_periodic_announce", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"", "\"once\"" ], "optional": true, "field": "announce_holdtime", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "announce_position", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "announce_to_first_user", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "announce_position_limit", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"0\"", "\"5\"", "\"10\"", "\"15\"", "\"20\"", "\"30\"" ], "optional": true, "field": "announce_round_seconds", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "monitor_format", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "monitor_type", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "queue_youarenext", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "queue_thereare", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "queue_callswaiting", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "queue_holdtime", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "queue_minute", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "queue_minutes", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "queue_seconds", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "queue_thankyou", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "queue_reporthold", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "queue_quantity1", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "queue_quantity2", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "queue_periodic_announce", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "queue_less_than", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "periodic_announce", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "joinempty", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "leavewhenempty", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "reportholdtime", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "ringinuse", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "memberdelay", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "timeoutrestart", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "defaultrule", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "acw", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "acwTimeout", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "dialActive", "description": "

Active/Disactive Campaign

" }, { "group": "Body", "type": "String", "allowedValues": [ "\"preview\"", "\"progressive\"", "\"power\"", "\"predictive\"", "\"booked\"" ], "optional": true, "field": "dialMethod", "description": "

Dial Method.

" }, { "group": "Body", "type": "Integer", "optional": true, "field": "dialLimitChannel", "description": "

Max 9999 channels, 0 means unlimited.

" }, { "group": "Body", "type": "Integer", "optional": true, "field": "dialLimitQueue", "description": "

Max 9999 member in queue(min:1, max:9999), 0 means unlimited.

" }, { "group": "Body", "type": "Float", "optional": true, "field": "dialPowerLevel", "description": "

Power Level: Calls for agents (min:1, max:10).

" }, { "group": "Body", "type": "String", "allowedValues": [ "\"agentBusyFactor\"", "\"dropRate\"" ], "optional": true, "field": "dialPredictiveOptimization", "description": "

Only for predictive method.

" }, { "group": "Body", "type": "Float", "optional": true, "field": "dialPredictiveOptimizationPercentage", "description": "

Predictive Optimization Percentage (min: 1, max: 95)

" }, { "group": "Body", "type": "Integer", "optional": true, "field": "dialPredictiveInterval", "description": "

Interval Predictive Minutes (min:5 max:30)

" }, { "group": "Body", "type": "String", "optional": true, "field": "dialOriginateCallerIdName", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "dialOriginateCallerIdNumber", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "dialOriginateTimeout", "description": "

Originate Timeout Seconds (min:1, max:999)

" }, { "group": "Body", "type": "String", "optional": true, "field": "dialQueueOptions", "description": "

https://wiki.asterisk.org/wiki/display/AST/Asterisk+13+Application_Queue

" }, { "group": "Body", "type": "Integer", "optional": true, "field": "dialQueueTimeout", "description": "

Queue Timeout Seconds (min:1, max:999)

" }, { "group": "Body", "type": "String", "optional": true, "field": "dialQueueProject", "description": "

AGI queue option (use: agi://127.0.0.1/square,<project_name>)

" }, { "group": "Body", "type": "Integer", "optional": true, "field": "dialCongestionMaxRetry", "description": "

#Congestion Retry (min:1, max:999)

" }, { "group": "Body", "type": "Integer", "optional": true, "field": "dialCongestionRetryFrequency", "description": "

Congestion Retry Frequency Minutes (min:1, max:99999)

" }, { "group": "Body", "type": "Integer", "optional": true, "field": "dialBusyMaxRetry", "description": "

#Busy Retry (min:1, max:999)

" }, { "group": "Body", "type": "Integer", "optional": true, "field": "dialBusyRetryFrequency", "description": "

Busy Retry Frequency Minutes (min:1, max:99999)

" }, { "group": "Body", "type": "Integer", "optional": true, "field": "dialNoAnswerMaxRetry", "description": "

#NoAnswer Retry (min:1, max:999)

" }, { "group": "Body", "type": "Integer", "optional": true, "field": "dialNoAnswerRetryFrequency", "description": "

NoAnswer Retry Frequency Minutes (min:1, max:99999)

" }, { "group": "Body", "type": "Integer", "optional": true, "field": "dialGlobalMaxRetry", "description": "

#Global Max Retry (min:1, max:999)

" }, { "group": "Body", "type": "String", "optional": true, "field": "dialTimezone", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "dialGlobalInterval", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "dialPrefix", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"always\"", "\"never\"", "\"onlyIfOpen\"" ], "optional": true, "field": "dialCheckDuplicateType", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "dialAMDActive", "description": "

Active/Disactive AMD

" }, { "group": "Body", "type": "Integer", "optional": true, "field": "dialAMDInitialSilence", "description": "

#AMD Initial Silence

" }, { "group": "Body", "type": "Integer", "optional": true, "field": "dialAMDGreeting", "description": "

#AMD Greeting

" }, { "group": "Body", "type": "Integer", "optional": true, "field": "dialAMDAfterGreetingSilence", "description": "

#AMD After Greeting Silence

" }, { "group": "Body", "type": "Integer", "optional": true, "field": "dialAMDTotalAnalysisTime", "description": "

#AMD Total Analysis Time

" }, { "group": "Body", "type": "Integer", "optional": true, "field": "dialAMDMinWordLength", "description": "

#AMD Min Word Length

" }, { "group": "Body", "type": "Integer", "optional": true, "field": "dialAMDBetweenWordsSilence", "description": "

#AMD Between Words Silence

" }, { "group": "Body", "type": "Integer", "optional": true, "field": "dialAMDMaximumNumberOfWords", "description": "

#AMD Maximum Number Of Words

" }, { "group": "Body", "type": "Integer", "optional": true, "field": "dialAMDSilenceThreshold", "description": "

#AMD Silence Threshold (min:0, max:32767)

" }, { "group": "Body", "type": "Integer", "optional": true, "field": "dialAMDMaximumWordLength", "description": "

#AMD Maximum Word Length

" }, { "group": "Body", "type": "Integer", "optional": true, "field": "dialRecallMeTimeout", "description": "

#RecallMe Timeout (min:1)

" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "dialRecallInQueue", "description": "

Active/Disactive Recall In Queue

" }, { "group": "Body", "type": "String", "allowedValues": [ "\"DESC\"", "\"ASC\"" ], "optional": true, "field": "dialOrderByScheduledAt", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "dialQueueProject2", "description": "

AGI queue option (use: agi://127.0.0.1/square,<project_name>)

" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "dialAgiAfterHangupClient", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "dialAgiAfterHangupAgent", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceQueue/index.js", "groupTitle": "Voice_Queues" }, { "type": "delete", "url": "/api/voice/queues/{id}", "title": "Deletes a Queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/queues/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteQueues", "group": "Voice_Queues", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceQueue/index.js", "groupTitle": "Voice_Queues" }, { "type": "get", "url": "/api/voice/queues/{id}/users", "title": "Gets queue agents", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/queues/{id}/users -v -u {name}:{password} -X GET", "type": "json" } ], "name": "GetAgents", "group": "Voice_Queues", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceQueue/index.js", "groupTitle": "Voice_Queues" }, { "type": "get", "url": "/api/voice/queues/{id}/blacklists", "title": "Get queue blacklists", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/queues/{id}/blacklists -v -u {name}:{password} -X GET", "type": "json" } ], "name": "GetBlackLists", "group": "Voice_Queues", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceQueue/index.js", "groupTitle": "Voice_Queues" }, { "type": "get", "url": "/api/voice/queues/{id}/finals", "title": "Gets queue hopper finals", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/queues/{id}/hopper_finals -v -u {name}:{password} -X GET", "type": "json" } ], "name": "GetHopperFinals", "group": "Voice_Queues", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceQueue/index.js", "groupTitle": "Voice_Queues" }, { "type": "get", "url": "/api/voice/queues/{id}/hopper_histories", "title": "Gets queue hopper histories", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/queues/{id}/hopper_histories -v -u {name}:{password} -X GET", "type": "json" } ], "name": "GetHopperHistories", "group": "Voice_Queues", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceQueue/index.js", "groupTitle": "Voice_Queues" }, { "type": "get", "url": "/api/voice/queues/{id}/hoppers", "title": "Gets queue hoppers", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/queues/{id}/hoppers -v -u {name}:{password} -X GET", "type": "json" } ], "name": "GetHoppers", "group": "Voice_Queues", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceQueue/index.js", "groupTitle": "Voice_Queues" }, { "type": "get", "url": "/api/voice/queues/{id}/lists", "title": "Get queue lists", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/queues/{id}/lists -v -u {name}:{password} -X GET", "type": "json" } ], "name": "GetLists", "group": "Voice_Queues", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceQueue/index.js", "groupTitle": "Voice_Queues" }, { "type": "get", "url": "/api/voice/queues/{id}/members", "title": "Gets queue members", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/queues/{id}/members -v -u {name}:{password} -X GET", "type": "json" } ], "name": "GetMembers", "group": "Voice_Queues", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceQueue/index.js", "groupTitle": "Voice_Queues" }, { "type": "get", "url": "/api/voice/queues", "title": "Gets a list of Queues", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/queues -v -u {name}:{password}", "type": "json" } ], "name": "GetQueues", "group": "Voice_Queues", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/voice/queues?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/voice/queues?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/voice/queues?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/voice/queues?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/voice/queues?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/voiceQueue/index.js", "groupTitle": "Voice_Queues" }, { "type": "get", "url": "/api/voice/queues/{id}/teams", "title": "Gets queue team", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/queues/{id}/teams -v -u {name}:{password} -X GET", "type": "json" } ], "name": "GetTeams", "group": "Voice_Queues", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceQueue/index.js", "groupTitle": "Voice_Queues" }, { "type": "delete", "url": "/api/voice/queues/{id}/users", "title": "Removes agents from a queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/queues/{id}/users?ids=1&ids=2 -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "RemoveAgents", "group": "Voice_Queues", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceQueue/index.js", "groupTitle": "Voice_Queues" }, { "type": "delete", "url": "/api/voice/queues/{id}/blacklists", "title": "Remove blacklists from a queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/queues/{id}/blacklists?ids=1&ids=2 -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "RemoveBlackLists", "group": "Voice_Queues", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceQueue/index.js", "groupTitle": "Voice_Queues" }, { "type": "delete", "url": "/api/voice/queues/{id}/lists", "title": "Remove lists from a queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/queues/{id}/lists?ids=1&ids=2 -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "RemoveLists", "group": "Voice_Queues", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceQueue/index.js", "groupTitle": "Voice_Queues" }, { "type": "get", "url": "/api/voice/queues/{id}", "title": "Gets a single Queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/queues/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowQueues", "group": "Voice_Queues", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceQueue/index.js", "groupTitle": "Voice_Queues" }, { "type": "get", "url": "/api/voice/queues/{id}/blacks", "title": "Gets queue hopper blacks", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/queues/{id}/hopper_black -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getHopperBlacks", "group": "Voice_Queues", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceQueue/index.js", "groupTitle": "Voice_Queues" }, { "type": "put", "url": "/api/voice/queues/{id}", "title": "Update an existing Queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/queues/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateQueues", "group": "Voice_Queues", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceQueue/index.js", "groupTitle": "Voice_Queues" }, { "type": "post", "url": "/api/voice/recordings", "title": "Creates a new Recording", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/recordings -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateRecordings", "group": "Voice_Recordings", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "Virtual", "optional": true, "field": "format", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "uniqueid", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "channel", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "membername", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "calleridnum", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "calleridname", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "connectedlinenum", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "connectedlinename", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "accountcode", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "context", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "exten", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "value", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "type", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "rating", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "queue", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "userDisposition", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "createdAt", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "updatedAt", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceRecording/index.js", "groupTitle": "Voice_Recordings" }, { "type": "delete", "url": "/api/voice/recordings/{id}", "title": "Deletes a Recording", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/recordings/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteRecordings", "group": "Voice_Recordings", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceRecording/index.js", "groupTitle": "Voice_Recordings" }, { "type": "get", "url": "/api/voice/recordings/describe", "title": "Gets table info about Recordings", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/recordings/describe -v -u {name}:{password}", "type": "json" } ], "name": "DescribeRecordings", "group": "Voice_Recordings", "description": "

Motion will return a HTTP status code 200 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceRecording/index.js", "groupTitle": "Voice_Recordings" }, { "type": "get", "url": "/api/voice/recordings", "title": "Gets a list of Recordings", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/recordings -v -u {name}:{password}", "type": "json" } ], "name": "GetRecordings", "group": "Voice_Recordings", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/voice/recordings?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/voice/recordings?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/voice/recordings?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/voice/recordings?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/voice/recordings?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/voiceRecording/index.js", "groupTitle": "Voice_Recordings" }, { "type": "get", "url": "/api/voice/recordings/{id}", "title": "Gets a single Recording", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/recordings/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowRecordings", "group": "Voice_Recordings", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceRecording/index.js", "groupTitle": "Voice_Recordings" }, { "type": "get", "url": "/api/voice/recordings/{id}/download", "title": "Download Recording", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/recordings/{id}/download -v -u {name}:{password} -X GET", "type": "json" } ], "name": "download", "group": "Voice_Recordings", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceRecording/index.js", "groupTitle": "Voice_Recordings" }, { "type": "put", "url": "/api/voice/recordings/{id}", "title": "Update an existing Recording", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/recordings/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateRecordings", "group": "Voice_Recordings", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceRecording/index.js", "groupTitle": "Voice_Recordings" }, { "type": "post", "url": "/api/voice/transfers/reports", "title": "Creates a new Transfer Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/transfers/reports -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateTransfer_Reports", "group": "Voice_Transfer_Reports", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "allowedValues": [ "\"blind\"", "\"attended\"" ], "optional": true, "field": "type", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "result", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "transfererchannel", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "transferercalleridnum", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "transferercalleridname", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "transfererconnectedlinenum", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "transfererconnectedlinename", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "transfereraccountcode", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "transferercontext", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "transfererexten", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "transfererlinkedid", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "transfereechannel", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "transfereecalleridnum", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "transfereecalleridname", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "transfereeconnectedlinenum", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "transfereeconnectedlinename", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "transfereeaccountcode", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "transfereecontext", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "transfereeexten", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "transfereelinkedid", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"Yes\"", "\"No\"" ], "optional": true, "field": "isexternal", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "context", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "extension", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceTransferReport/index.js", "groupTitle": "Voice_Transfer_Reports" }, { "type": "delete", "url": "/api/voice/transfers/reports/{id}", "title": "Deletes a Transfer Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/transfers/reports/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteTransfer_Reports", "group": "Voice_Transfer_Reports", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceTransferReport/index.js", "groupTitle": "Voice_Transfer_Reports" }, { "type": "get", "url": "/api/voice/transfers/reports", "title": "Gets a list of Transfer Reports", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/transfers/reports -v -u {name}:{password}", "type": "json" } ], "name": "GetTransfer_Reports", "group": "Voice_Transfer_Reports", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/voice/transfers/reports?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/voice/transfers/reports?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/voice/transfers/reports?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/voice/transfers/reports?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/voice/transfers/reports?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/voiceTransferReport/index.js", "groupTitle": "Voice_Transfer_Reports" }, { "type": "get", "url": "/api/voice/transfers/reports/{id}", "title": "Gets a single Transfer Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/transfers/reports/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowTransfer_Reports", "group": "Voice_Transfer_Reports", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceTransferReport/index.js", "groupTitle": "Voice_Transfer_Reports" }, { "type": "put", "url": "/api/voice/transfers/reports/{id}", "title": "Update an existing Transfer Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/transfers/reports/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateTransfer_Reports", "group": "Voice_Transfer_Reports", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceTransferReport/index.js", "groupTitle": "Voice_Transfer_Reports" }, { "type": "post", "url": "/api/integrations/zendesk/accounts", "title": "Creates a new Zendesk Account", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/zendesk/accounts -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateZendesk_Accounts", "group": "Zendesk_Accounts", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": true, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "username", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "password", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "token", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "remoteUri", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"password\"", "\"token\"" ], "optional": true, "field": "authType", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "serverUrl", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"integrationTab\"", "\"newTab\"" ], "optional": true, "field": "type", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intZendeskAccount/index.js", "groupTitle": "Zendesk_Accounts" }, { "type": "delete", "url": "/api/integrations/zendesk/accounts/{id}", "title": "Deletes a Zendesk Account", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/zendesk/accounts/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteZendesk_Accounts", "group": "Zendesk_Accounts", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intZendeskAccount/index.js", "groupTitle": "Zendesk_Accounts" }, { "type": "get", "url": "/api/integrations/zendesk/accounts", "title": "Gets a list of Zendesk Accounts", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/zendesk/accounts -v -u {name}:{password}", "type": "json" } ], "name": "GetZendesk_Accounts", "group": "Zendesk_Accounts", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/integrations/zendesk/accounts?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/integrations/zendesk/accounts?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/integrations/zendesk/accounts?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/integrations/zendesk/accounts?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/integrations/zendesk/accounts?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/intZendeskAccount/index.js", "groupTitle": "Zendesk_Accounts" }, { "type": "get", "url": "/api/integrations/zendesk/accounts/{id}", "title": "Gets a single Zendesk Account", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/zendesk/accounts/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowZendesk_Accounts", "group": "Zendesk_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intZendeskAccount/index.js", "groupTitle": "Zendesk_Accounts" }, { "type": "post", "url": "/api/integrations/zendesk/accounts/{id}/configurations", "title": "Creates new configuration", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/zendesk/accounts/{id}/configurations -d '{\"name\": \"conf1\"}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addConfiguration", "group": "Zendesk_Accounts", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intZendeskAccount/index.js", "groupTitle": "Zendesk_Accounts" }, { "type": "get", "url": "/api/integrations/zendesk/accounts/{id}/configurations", "title": "Gets account configurations", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/zendesk/accounts/{id}/configurations -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getConfigurations", "group": "Zendesk_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intZendeskAccount/index.js", "groupTitle": "Zendesk_Accounts" }, { "type": "get", "url": "/api/integrations/zendesk/accounts/{id}/fields", "title": "Gets account fields", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/zendesk/accounts/{id}/fields -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getFields", "group": "Zendesk_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intZendeskAccount/index.js", "groupTitle": "Zendesk_Accounts" }, { "type": "put", "url": "/api/integrations/zendesk/accounts/{id}", "title": "Update an existing Zendesk Account", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/zendesk/accounts/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateZendesk_Accounts", "group": "Zendesk_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intZendeskAccount/index.js", "groupTitle": "Zendesk_Accounts" }, { "type": "post", "url": "/api/integrations/zendesk/configurations", "title": "Creates a new Zendesk Configuration", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/zendesk/configurations -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateZendesk_Configurations", "group": "Zendesk_Configurations", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": true, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intZendeskConfiguration/index.js", "groupTitle": "Zendesk_Configurations" }, { "type": "delete", "url": "/api/integrations/zendesk/configurations/{id}", "title": "Deletes a Zendesk Configuration", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/zendesk/configurations/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteZendesk_Configurations", "group": "Zendesk_Configurations", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intZendeskConfiguration/index.js", "groupTitle": "Zendesk_Configurations" }, { "type": "get", "url": "/api/integrations/zendesk/configurations", "title": "Gets a list of Zendesk Configurations", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/zendesk/configurations -v -u {name}:{password}", "type": "json" } ], "name": "GetZendesk_Configurations", "group": "Zendesk_Configurations", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/integrations/zendesk/configurations?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/integrations/zendesk/configurations?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/integrations/zendesk/configurations?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/integrations/zendesk/configurations?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/integrations/zendesk/configurations?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/intZendeskConfiguration/index.js", "groupTitle": "Zendesk_Configurations" }, { "type": "get", "url": "/api/integrations/zendesk/configurations/{id}", "title": "Gets a single Zendesk Configuration", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/zendesk/configurations/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowZendesk_Configurations", "group": "Zendesk_Configurations", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intZendeskConfiguration/index.js", "groupTitle": "Zendesk_Configurations" }, { "type": "get", "url": "/api/integrations/zendesk/configurations/{id}/descriptions", "title": "Gets configurations descriptions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/zendesk/configurations/{id}/descriptions -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getDescriptions", "group": "Zendesk_Configurations", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intZendeskConfiguration/index.js", "groupTitle": "Zendesk_Configurations" }, { "type": "get", "url": "/api/integrations/zendesk/configurations/{id}/fields", "title": "Gets configurations fields", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/zendesk/configurations/{id}/fields -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getFields", "group": "Zendesk_Configurations", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intZendeskConfiguration/index.js", "groupTitle": "Zendesk_Configurations" }, { "type": "get", "url": "/api/integrations/zendesk/configurations/{id}/subjects", "title": "Gets configurations subjects", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/zendesk/configurations/{id}/subjects -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getSubjects", "group": "Zendesk_Configurations", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intZendeskConfiguration/index.js", "groupTitle": "Zendesk_Configurations" }, { "type": "get", "url": "/api/integrations/zendesk/configurations/{id}/tags", "title": "Gets configurations tags", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/zendesk/configurations/{id}/tags -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getTags", "group": "Zendesk_Configurations", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intZendeskConfiguration/index.js", "groupTitle": "Zendesk_Configurations" }, { "type": "post", "url": "/api/integrations/zendesk/configurations/{id}/tags", "title": "Sets new tags", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/zendesk/configurations/{id}/tags -d '{\"ids\": [1,12]}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "setTags", "group": "Zendesk_Configurations", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intZendeskConfiguration/index.js", "groupTitle": "Zendesk_Configurations" }, { "type": "put", "url": "/api/integrations/zendesk/configurations/{id}", "title": "Update an existing Zendesk Configuration", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/zendesk/configurations/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateZendesk_Configurations", "group": "Zendesk_Configurations", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intZendeskConfiguration/index.js", "groupTitle": "Zendesk_Configurations" }, { "type": "post", "url": "/api/integrations/zendesk/fields", "title": "Creates a new Zendesk Field", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/zendesk/fields -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateZendesk_Fields", "group": "Zendesk_Fields", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "allowedValues": [ "\"string\"", "\"variable\"", "\"customVariable\"", "\"keyValue\"" ], "optional": true, "field": "type", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "content", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "key", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"string\"", "\"variable\"", "\"customVariable\"" ], "optional": true, "field": "keyType", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "keyContent", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "idField", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "nameField", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "customField", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "variableName", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intZendeskField/index.js", "groupTitle": "Zendesk_Fields" }, { "type": "delete", "url": "/api/integrations/zendesk/fields/{id}", "title": "Deletes a Zendesk Field", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/zendesk/fields/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteZendesk_Fields", "group": "Zendesk_Fields", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intZendeskField/index.js", "groupTitle": "Zendesk_Fields" }, { "type": "get", "url": "/api/integrations/zendesk/fields", "title": "Gets a list of Zendesk Fields", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/zendesk/fields -v -u {name}:{password}", "type": "json" } ], "name": "GetZendesk_Fields", "group": "Zendesk_Fields", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/integrations/zendesk/fields?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/integrations/zendesk/fields?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/integrations/zendesk/fields?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/integrations/zendesk/fields?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/integrations/zendesk/fields?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/intZendeskField/index.js", "groupTitle": "Zendesk_Fields" }, { "type": "get", "url": "/api/integrations/zendesk/fields/{id}", "title": "Gets a single Zendesk Field", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/zendesk/fields/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowZendesk_Fields", "group": "Zendesk_Fields", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intZendeskField/index.js", "groupTitle": "Zendesk_Fields" }, { "type": "put", "url": "/api/integrations/zendesk/fields/{id}", "title": "Update an existing Zendesk Field", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/zendesk/fields/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateZendesk_Fields", "group": "Zendesk_Fields", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intZendeskField/index.js", "groupTitle": "Zendesk_Fields" }, { "type": "post", "url": "/api/integrations/zoho/accounts", "title": "Creates a new Zoho Account", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/zoho/accounts -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateZoho_Accounts", "group": "Zoho_Accounts", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": true, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "authToken", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "host", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "serverUrl", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intZohoAccount/index.js", "groupTitle": "Zoho_Accounts" }, { "type": "delete", "url": "/api/integrations/zoho/accounts/{id}", "title": "Deletes a Zoho Account", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/zoho/accounts/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteZoho_Accounts", "group": "Zoho_Accounts", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intZohoAccount/index.js", "groupTitle": "Zoho_Accounts" }, { "type": "get", "url": "/api/integrations/zoho/accounts", "title": "Gets a list of Zoho Accounts", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/zoho/accounts -v -u {name}:{password}", "type": "json" } ], "name": "GetZoho_Accounts", "group": "Zoho_Accounts", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/integrations/zoho/accounts?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/integrations/zoho/accounts?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/integrations/zoho/accounts?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/integrations/zoho/accounts?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/integrations/zoho/accounts?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/intZohoAccount/index.js", "groupTitle": "Zoho_Accounts" }, { "type": "get", "url": "/api/integrations/zoho/accounts/{id}", "title": "Gets a single Zoho Account", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/zoho/accounts/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowZoho_Accounts", "group": "Zoho_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intZohoAccount/index.js", "groupTitle": "Zoho_Accounts" }, { "type": "post", "url": "/api/integrations/zoho/accounts/{id}/configurations", "title": "Creates new configuration", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/zoho/accounts/{id}/configurations -d '{\"name\": \"conf1\"}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addConfiguration", "group": "Zoho_Accounts", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intZohoAccount/index.js", "groupTitle": "Zoho_Accounts" }, { "type": "get", "url": "/api/integrations/zoho/accounts/{id}/configurations", "title": "Gets account configurations", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/zoho/accounts/{id}/configurations -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getConfigurations", "group": "Zoho_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intZohoAccount/index.js", "groupTitle": "Zoho_Accounts" }, { "type": "get", "url": "/api/integrations/zoho/accounts/{id}/fields", "title": "Gets account fields", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/zoho/accounts/{id}/fields -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getFields", "group": "Zoho_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intZohoAccount/index.js", "groupTitle": "Zoho_Accounts" }, { "type": "put", "url": "/api/integrations/zoho/accounts/{id}", "title": "Update an existing Zoho Account", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/zoho/accounts/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateZoho_Accounts", "group": "Zoho_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intZohoAccount/index.js", "groupTitle": "Zoho_Accounts" }, { "type": "post", "url": "/api/integrations/zoho/configurations", "title": "Creates a new Zoho Configuration", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/zoho/configurations -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateZoho_Configurations", "group": "Zoho_Configurations", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": true, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intZohoConfiguration/index.js", "groupTitle": "Zoho_Configurations" }, { "type": "delete", "url": "/api/integrations/zoho/configurations/{id}", "title": "Deletes a Zoho Configuration", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/zoho/configurations/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteZoho_Configurations", "group": "Zoho_Configurations", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intZohoConfiguration/index.js", "groupTitle": "Zoho_Configurations" }, { "type": "get", "url": "/api/integrations/zoho/configurations", "title": "Gets a list of Zoho Configurations", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/zoho/configurations -v -u {name}:{password}", "type": "json" } ], "name": "GetZoho_Configurations", "group": "Zoho_Configurations", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/integrations/zoho/configurations?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/integrations/zoho/configurations?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/integrations/zoho/configurations?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/integrations/zoho/configurations?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/integrations/zoho/configurations?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/intZohoConfiguration/index.js", "groupTitle": "Zoho_Configurations" }, { "type": "get", "url": "/api/integrations/zoho/configurations/{id}", "title": "Gets a single Zoho Configuration", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/zoho/configurations/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowZoho_Configurations", "group": "Zoho_Configurations", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intZohoConfiguration/index.js", "groupTitle": "Zoho_Configurations" }, { "type": "get", "url": "/api/integrations/zoho/configurations/{id}/descriptions", "title": "Gets configurations descriptions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/zoho/configurations/{id}/descriptions -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getDescriptions", "group": "Zoho_Configurations", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intZohoConfiguration/index.js", "groupTitle": "Zoho_Configurations" }, { "type": "get", "url": "/api/integrations/zoho/configurations/{id}/fields", "title": "Gets configurations fields", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/zoho/configurations/{id}/fields -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getFields", "group": "Zoho_Configurations", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intZohoConfiguration/index.js", "groupTitle": "Zoho_Configurations" }, { "type": "get", "url": "/api/integrations/zoho/configurations/{id}/subjects", "title": "Gets configurations subjects", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/zoho/configurations/{id}/subjects -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getSubjects", "group": "Zoho_Configurations", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intZohoConfiguration/index.js", "groupTitle": "Zoho_Configurations" }, { "type": "put", "url": "/api/integrations/zoho/configurations/{id}", "title": "Update an existing Zoho Configuration", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/zoho/configurations/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateZoho_Configurations", "group": "Zoho_Configurations", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intZohoConfiguration/index.js", "groupTitle": "Zoho_Configurations" }, { "type": "post", "url": "/api/integrations/zoho/fields", "title": "Creates a new Zoho Field", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/zoho/fields -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateZoho_Fields", "group": "Zoho_Fields", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "allowedValues": [ "\"string\"", "\"variable\"", "\"customVariable\"", "\"keyValue\"" ], "optional": true, "field": "type", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "content", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "key", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"string\"", "\"variable\"", "\"customVariable\"" ], "optional": true, "field": "keyType", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "keyContent", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "idField", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "nameField", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "customField", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "variableName", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intZohoField/index.js", "groupTitle": "Zoho_Fields" }, { "type": "delete", "url": "/api/integrations/zoho/fields/{id}", "title": "Deletes a Zoho Field", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/zoho/fields/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteZoho_Fields", "group": "Zoho_Fields", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intZohoField/index.js", "groupTitle": "Zoho_Fields" }, { "type": "get", "url": "/api/integrations/zoho/fields", "title": "Gets a list of Zoho Fields", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/zoho/fields -v -u {name}:{password}", "type": "json" } ], "name": "GetZoho_Fields", "group": "Zoho_Fields", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/integrations/zoho/fields?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/integrations/zoho/fields?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/integrations/zoho/fields?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/integrations/zoho/fields?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/integrations/zoho/fields?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/intZohoField/index.js", "groupTitle": "Zoho_Fields" }, { "type": "get", "url": "/api/integrations/zoho/fields/{id}", "title": "Gets a single Zoho Field", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/zoho/fields/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowZoho_Fields", "group": "Zoho_Fields", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intZohoField/index.js", "groupTitle": "Zoho_Fields" }, { "type": "put", "url": "/api/integrations/zoho/fields/{id}", "title": "Update an existing Zoho Field", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/zoho/fields/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateZoho_Fields", "group": "Zoho_Fields", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intZohoField/index.js", "groupTitle": "Zoho_Fields" }, { "type": "post", "url": "/api/cdr", "title": "Creates a new Cdr", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cdr -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateCdrs", "group": "cdr", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "calldate", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "clid", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "src", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "dst", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "dcontext", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "channel", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "dstchannel", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "lastapp", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "lastdata", "description": "" }, { "group": "Body", "type": "Integer", "optional": false, "field": "duration", "description": "" }, { "group": "Body", "type": "Integer", "optional": false, "field": "billsec", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "disposition", "description": "" }, { "group": "Body", "type": "Integer", "optional": false, "field": "amaflags", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "accountcode", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "userfield", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "uniqueid", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "linkedid", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "sequence", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "peeraccount", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "type", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "tag", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cdr/index.js", "groupTitle": "cdr" }, { "type": "delete", "url": "/api/cdr/{id}", "title": "Deletes a Cdr", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cdr/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteCdrs", "group": "cdr", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cdr/index.js", "groupTitle": "cdr" }, { "type": "get", "url": "/api/cdr", "title": "Gets a list of Cdrs", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cdr -v -u {name}:{password}", "type": "json" } ], "name": "GetCdrs", "group": "cdr", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/cdr?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/cdr?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/cdr?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/cdr?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/cdr?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/cdr/index.js", "groupTitle": "cdr" }, { "type": "get", "url": "/api/cdr/{id}", "title": "Gets a single Cdr", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cdr/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowCdrs", "group": "cdr", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cdr/index.js", "groupTitle": "cdr" }, { "type": "put", "url": "/api/cdr/{id}", "title": "Update an existing Cdr", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cdr/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateCdrs", "group": "cdr", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cdr/index.js", "groupTitle": "cdr" }, { "type": "post", "url": "/api/voiceQueuesLog", "title": "Creates a new VoiceQueuesLog", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voiceQueuesLog -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateVoiceQueuesLogs", "group": "voiceQueuesLog", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": true, "field": "time", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "callid", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "queuename", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "agent", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "event", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "data1", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "data2", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "data3", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "data4", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "data5", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "dtm", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceQueuesLog/index.js", "groupTitle": "voiceQueuesLog" }, { "type": "delete", "url": "/api/voiceQueuesLog/{id}", "title": "Deletes a VoiceQueuesLog", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voiceQueuesLog/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteVoiceQueuesLogs", "group": "voiceQueuesLog", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceQueuesLog/index.js", "groupTitle": "voiceQueuesLog" }, { "type": "get", "url": "/api/voiceQueuesLog", "title": "Gets a list of VoiceQueuesLogs", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voiceQueuesLog -v -u {name}:{password}", "type": "json" } ], "name": "GetVoiceQueuesLogs", "group": "voiceQueuesLog", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/voiceQueuesLog?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/voiceQueuesLog?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/voiceQueuesLog?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/voiceQueuesLog?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/voiceQueuesLog?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/voiceQueuesLog/index.js", "groupTitle": "voiceQueuesLog" }, { "type": "get", "url": "/api/voiceQueuesLog/{id}", "title": "Gets a single VoiceQueuesLog", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voiceQueuesLog/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowVoiceQueuesLogs", "group": "voiceQueuesLog", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceQueuesLog/index.js", "groupTitle": "voiceQueuesLog" }, { "type": "put", "url": "/api/voiceQueuesLog/{id}", "title": "Update an existing VoiceQueuesLog", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voiceQueuesLog/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateVoiceQueuesLogs", "group": "voiceQueuesLog", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceQueuesLog/index.js", "groupTitle": "voiceQueuesLog" } ] }); +define({ "api": [ { "type": "delete", "url": "/api/actions/{id}", "title": "Deletes a Action", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/actions/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteActions", "group": "Actions", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/action/index.js", "groupTitle": "Actions" }, { "type": "put", "url": "/api/actions/{id}", "title": "Update an existing Action", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/actions/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateActions", "group": "Actions", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/action/index.js", "groupTitle": "Actions" }, { "type": "post", "url": "/api/analytics/custom_reports", "title": "Creates a new Analytic Custom Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/analytics/custom_reports -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateAnalytic_Custom_Reports", "group": "Analytic_Custom_Reports", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "parent", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "table", "description": "" }, { "group": "Body", "type": "Text", "optional": true, "field": "conditions", "description": "" }, { "group": "Body", "type": "Text", "optional": true, "field": "joins", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/analyticCustomReport/index.js", "groupTitle": "Analytic_Custom_Reports" }, { "type": "delete", "url": "/api/analytics/custom_reports/{id}", "title": "Deletes a Analytic Custom Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/analytics/custom_reports/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteAnalytic_Custom_Reports", "group": "Analytic_Custom_Reports", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/analyticCustomReport/index.js", "groupTitle": "Analytic_Custom_Reports" }, { "type": "get", "url": "/api/analytics/custom_reports", "title": "Gets a list of Analytic Custom Reports", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/analytics/custom_reports -v -u {name}:{password}", "type": "json" } ], "name": "GetAnalytic_Custom_Reports", "group": "Analytic_Custom_Reports", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/analytics/custom_reports?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/analytics/custom_reports?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/analytics/custom_reports?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/analytics/custom_reports?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/analytics/custom_reports?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/analyticCustomReport/index.js", "groupTitle": "Analytic_Custom_Reports" }, { "type": "get", "url": "/api/analytics/custom_reports/{id}", "title": "Gets a single Analytic Custom Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/analytics/custom_reports/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowAnalytic_Custom_Reports", "group": "Analytic_Custom_Reports", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/analyticCustomReport/index.js", "groupTitle": "Analytic_Custom_Reports" }, { "type": "get", "url": "/api/analytics/custom_reports/{id}/preview", "title": "Report Preview", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/analytics/custom_reports/{id}/preview -v -u {name}:{password} -X GET", "type": "json" } ], "name": "preview", "group": "Analytic_Custom_Reports", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/analyticCustomReport/index.js", "groupTitle": "Analytic_Custom_Reports" }, { "type": "get", "url": "/api/analytics/custom_reports/{id}/query", "title": "Report Query SQL", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/analytics/custom_reports/{id}/query -v -u {name}:{password} -X GET", "type": "json" } ], "name": "query", "group": "Analytic_Custom_Reports", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/analyticCustomReport/index.js", "groupTitle": "Analytic_Custom_Reports" }, { "type": "get", "url": "/api/analytics/custom_reports/{id}/run", "title": "Report Run", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/analytics/custom_reports/{id}/run -v -u {name}:{password} -X GET", "type": "json" } ], "name": "run", "group": "Analytic_Custom_Reports", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/analyticCustomReport/index.js", "groupTitle": "Analytic_Custom_Reports" }, { "type": "put", "url": "/api/analytics/custom_reports/{id}", "title": "Update an existing Analytic Custom Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/analytics/custom_reports/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateAnalytic_Custom_Reports", "group": "Analytic_Custom_Reports", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/analyticCustomReport/index.js", "groupTitle": "Analytic_Custom_Reports" }, { "type": "post", "url": "/api/analytics/default_reports", "title": "Creates a new Analytic Default Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/analytics/default_reports -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateAnalytic_Default_Reports", "group": "Analytic_Default_Reports", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "parent", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "table", "description": "" }, { "group": "Body", "type": "Text", "optional": true, "field": "conditions", "description": "" }, { "group": "Body", "type": "Text", "optional": true, "field": "joins", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/analyticDefaultReport/index.js", "groupTitle": "Analytic_Default_Reports" }, { "type": "delete", "url": "/api/analytics/default_reports/{id}", "title": "Deletes a Analytic Default Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/analytics/default_reports/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteAnalytic_Default_Reports", "group": "Analytic_Default_Reports", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/analyticDefaultReport/index.js", "groupTitle": "Analytic_Default_Reports" }, { "type": "get", "url": "/api/analytics/default_reports", "title": "Gets a list of Analytic Default Reports", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/analytics/default_reports -v -u {name}:{password}", "type": "json" } ], "name": "GetAnalytic_Default_Reports", "group": "Analytic_Default_Reports", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/analytics/default_reports?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/analytics/default_reports?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/analytics/default_reports?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/analytics/default_reports?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/analytics/default_reports?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/analyticDefaultReport/index.js", "groupTitle": "Analytic_Default_Reports" }, { "type": "get", "url": "/api/analytics/default_reports/{id}", "title": "Gets a single Analytic Default Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/analytics/default_reports/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowAnalytic_Default_Reports", "group": "Analytic_Default_Reports", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/analyticDefaultReport/index.js", "groupTitle": "Analytic_Default_Reports" }, { "type": "get", "url": "/api/analytics/default_reports/{id}/preview", "title": "Report Preview", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/analytics/default_reports/{id}/preview -v -u {name}:{password} -X GET", "type": "json" } ], "name": "preview", "group": "Analytic_Default_Reports", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/analyticDefaultReport/index.js", "groupTitle": "Analytic_Default_Reports" }, { "type": "get", "url": "/api/analytics/default_reports/{id}/query", "title": "Report Query SQL", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/analytics/default_reports/{id}/query -v -u {name}:{password} -X GET", "type": "json" } ], "name": "query", "group": "Analytic_Default_Reports", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/analyticDefaultReport/index.js", "groupTitle": "Analytic_Default_Reports" }, { "type": "get", "url": "/api/analytics/default_reports/{id}/run", "title": "Report Run", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/analytics/default_reports/{id}/run -v -u {name}:{password} -X GET", "type": "json" } ], "name": "run", "group": "Analytic_Default_Reports", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/analyticDefaultReport/index.js", "groupTitle": "Analytic_Default_Reports" }, { "type": "put", "url": "/api/analytics/default_reports/{id}", "title": "Update an existing Analytic Default Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/analytics/default_reports/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateAnalytic_Default_Reports", "group": "Analytic_Default_Reports", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/analyticDefaultReport/index.js", "groupTitle": "Analytic_Default_Reports" }, { "type": "post", "url": "/api/analytics/extracted_reports", "title": "Creates a new Analytic Extracted Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/analytics/extracted_reports -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateAnalytic_Extacted_Reports", "group": "Analytic_Extracted_Reports", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "name", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"csv\"", "\"pdf\"", "\"xlsx\"" ], "optional": false, "field": "output", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "savename", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "startDate", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "endDate", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "status", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"manual\"", "\"scheduled\"" ], "optional": false, "field": "type", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/analyticExtractedReport/index.js", "groupTitle": "Analytic_Extracted_Reports" }, { "type": "delete", "url": "/api/analytics/extracted_reports/{id}", "title": "Deletes a Analytic Extracted Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/analytics/extracted_reports/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteAnalytic_Extacted_Reports", "group": "Analytic_Extracted_Reports", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/analyticExtractedReport/index.js", "groupTitle": "Analytic_Extracted_Reports" }, { "type": "get", "url": "/api/analytics/extracted_reports", "title": "Gets a list of Analytic Extacted Reports", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/analytics/extracted_reports -v -u {name}:{password}", "type": "json" } ], "name": "GetAnalytic_Extacted_Reports", "group": "Analytic_Extracted_Reports", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/analytics/extracted_reports?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/analytics/extracted_reports?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/analytics/extracted_reports?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/analytics/extracted_reports?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/analytics/extracted_reports?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/analyticExtractedReport/index.js", "groupTitle": "Analytic_Extracted_Reports" }, { "type": "get", "url": "/api/analytics/extracted_reports/{id}", "title": "Gets a single Analytic Extracted Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/analytics/extracted_reports/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowAnalytic_Extacted_Reports", "group": "Analytic_Extracted_Reports", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/analyticExtractedReport/index.js", "groupTitle": "Analytic_Extracted_Reports" }, { "type": "get", "url": "/api/analytics/extracted_reports/{id}/download", "title": "Download Extracted Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/analytics/extracted_reports/{id}/download -v -u {name}:{password} -X GET", "type": "json" } ], "name": "download", "group": "Analytic_Extracted_Reports", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/analyticExtractedReport/index.js", "groupTitle": "Analytic_Extracted_Reports" }, { "type": "put", "url": "/api/analytics/extracted_reports/{id}", "title": "Update an existing Analytic Extracted Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/analytics/extracted_reports/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateAnalytic_Extacted_Reports", "group": "Analytic_Extracted_Reports", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/analyticExtractedReport/index.js", "groupTitle": "Analytic_Extracted_Reports" }, { "type": "post", "url": "/api/analytics/field_reports/create_many", "title": "Creates many Analytic Field Reports", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/analytics/field_reports/create_many -d '[{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}]' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "BulkCreateAnalytic_Field_Reports", "group": "Analytic_Field_Reports", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "field", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "alias", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "function", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "format", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "groupBy", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "orderBy", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "custom", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/analyticFieldReport/index.js", "groupTitle": "Analytic_Field_Reports" }, { "type": "delete", "url": "/api/analytics/field_reports/destroy_many?ids={ids}", "title": "Deletes many Analytic Field Reports", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/analytics/field_reports/destroy_many?ids=1&ids=2&ids=3 -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "BulkDeleteAnalytic_Field_Reports", "group": "Analytic_Field_Reports", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/analyticFieldReport/index.js", "groupTitle": "Analytic_Field_Reports" }, { "type": "post", "url": "/api/analytics/field_reports", "title": "Creates a new Analytic Field Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/analytics/field_reports -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateAnalytic_Field_Reports", "group": "Analytic_Field_Reports", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "field", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "alias", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "function", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "format", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "groupBy", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "orderBy", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "custom", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/analyticFieldReport/index.js", "groupTitle": "Analytic_Field_Reports" }, { "type": "delete", "url": "/api/analytics/field_reports/{id}", "title": "Deletes a Analytic Field Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/analytics/field_reports/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteAnalytic_Field_Reports", "group": "Analytic_Field_Reports", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/analyticFieldReport/index.js", "groupTitle": "Analytic_Field_Reports" }, { "type": "get", "url": "/api/analytics/field_reports", "title": "Gets a list of Analytic Field Reports", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/analytics/field_reports -v -u {name}:{password}", "type": "json" } ], "name": "GetAnalytic_Field_Reports", "group": "Analytic_Field_Reports", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/analytics/field_reports?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/analytics/field_reports?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/analytics/field_reports?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/analytics/field_reports?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/analytics/field_reports?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/analyticFieldReport/index.js", "groupTitle": "Analytic_Field_Reports" }, { "type": "get", "url": "/api/analytics/field_reports/{id}", "title": "Gets a single Analytic Field Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/analytics/field_reports/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowAnalytic_Field_Reports", "group": "Analytic_Field_Reports", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/analyticFieldReport/index.js", "groupTitle": "Analytic_Field_Reports" }, { "type": "post", "url": "/api/analytics/field_reports/{id}/create_many", "title": "Rewrite fields set", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/analytics/field_reports/{id}/create_many -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addFields", "group": "Analytic_Field_Reports", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/analyticFieldReport/index.js", "groupTitle": "Analytic_Field_Reports" }, { "type": "put", "url": "/api/analytics/field_reports/{id}", "title": "Update an existing Analytic Field Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/analytics/field_reports/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateAnalytic_Field_Reports", "group": "Analytic_Field_Reports", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/analyticFieldReport/index.js", "groupTitle": "Analytic_Field_Reports" }, { "type": "post", "url": "/api/analytics/metrics", "title": "Creates a new Analytic Metrics", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/analytics/metrics -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateAnalytic_Metric", "group": "Analytic_Metrics", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "table", "description": "" }, { "group": "Body", "type": "Text", "optional": true, "field": "metric", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/analyticMetric/index.js", "groupTitle": "Analytic_Metrics" }, { "type": "delete", "url": "/api/analytics/metrics/{id}", "title": "Deletes a Analytic Metrics", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/analytics/metrics/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteAnalytic_Metric", "group": "Analytic_Metrics", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/analyticMetric/index.js", "groupTitle": "Analytic_Metrics" }, { "type": "get", "url": "/api/analytics/metrics", "title": "Gets a list of Analytic Metric", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/analytics/metrics -v -u {name}:{password}", "type": "json" } ], "name": "GetAnalytic_Metric", "group": "Analytic_Metrics", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/analytics/metrics?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/analytics/metrics?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/analytics/metrics?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/analytics/metrics?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/analytics/metrics?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/analyticMetric/index.js", "groupTitle": "Analytic_Metrics" }, { "type": "get", "url": "/api/analytics/metrics/{id}", "title": "Gets a single Analytic Metrics", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/analytics/metrics/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowAnalytic_Metric", "group": "Analytic_Metrics", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/analyticMetric/index.js", "groupTitle": "Analytic_Metrics" }, { "type": "put", "url": "/api/analytics/metrics/{id}", "title": "Update an existing Analytic Metrics", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/analytics/metrics/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateAnalytic_Metric", "group": "Analytic_Metrics", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/analyticMetric/index.js", "groupTitle": "Analytic_Metrics" }, { "type": "post", "url": "/api/analytics/tree_reports", "title": "Creates a new Analytic Tree Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/analytics/tree_reports -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateAnalytic_Tree_Reports", "group": "Analytic_Tree_Reports", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "Text", "optional": false, "field": "tree", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/analyticTreeReport/index.js", "groupTitle": "Analytic_Tree_Reports" }, { "type": "delete", "url": "/api/analytics/tree_reports/{id}", "title": "Deletes a Analytic Tree Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/analytics/tree_reports/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteAnalytic_Tree_Reports", "group": "Analytic_Tree_Reports", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/analyticTreeReport/index.js", "groupTitle": "Analytic_Tree_Reports" }, { "type": "get", "url": "/api/analytics/tree_reports", "title": "Gets a list of Analytic Tree Reports", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/analytics/tree_reports -v -u {name}:{password}", "type": "json" } ], "name": "GetAnalytic_Tree_Reports", "group": "Analytic_Tree_Reports", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/analytics/tree_reports?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/analytics/tree_reports?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/analytics/tree_reports?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/analytics/tree_reports?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/analytics/tree_reports?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/analyticTreeReport/index.js", "groupTitle": "Analytic_Tree_Reports" }, { "type": "get", "url": "/api/analytics/tree_reports/{id}", "title": "Gets a single Analytic Tree Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/analytics/tree_reports/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowAnalytic_Tree_Reports", "group": "Analytic_Tree_Reports", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/analyticTreeReport/index.js", "groupTitle": "Analytic_Tree_Reports" }, { "type": "put", "url": "/api/analytics/tree_reports/{id}", "title": "Update an existing Analytic Tree Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/analytics/tree_reports/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateAnalytic_Tree_Reports", "group": "Analytic_Tree_Reports", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/analyticTreeReport/index.js", "groupTitle": "Analytic_Tree_Reports" }, { "type": "delete", "url": "/api/attachments/{id}", "title": "Deletes a Attachment", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/attachments/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteAttachments", "group": "Attachments", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/attachment/index.js", "groupTitle": "Attachments" }, { "type": "get", "url": "/api/attachments", "title": "Gets a list of Attachments", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/attachments -v -u {name}:{password}", "type": "json" } ], "name": "GetAttachments", "group": "Attachments", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/attachments?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/attachments?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/attachments?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/attachments?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/attachments?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/attachment/index.js", "groupTitle": "Attachments" }, { "type": "get", "url": "/api/attachments/{id}", "title": "Gets a single Attachment", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/attachments/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowAttachments", "group": "Attachments", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/attachment/index.js", "groupTitle": "Attachments" }, { "type": "post", "url": "/api/attachments", "title": "Add attachment", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/attachments -H 'Content-Type: multipart/form-data' -F 'file=@{filename}' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "create", "group": "Attachments", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/attachment/index.js", "groupTitle": "Attachments" }, { "type": "get", "url": "/api/attachments/:id/download", "title": "Download attachment", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/attachments/:id/download -v -u {name}:{password} -X GET", "type": "json" } ], "name": "download", "group": "Attachments", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/attachment/index.js", "groupTitle": "Attachments" }, { "type": "get", "url": "/api/chat/interactions/{id}/attachment_download", "title": "Download attachment", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/interactions/{id}/attachment_download -v -u {name}:{password} -X GET", "type": "json" } ], "name": "show", "group": "Attachments", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatInteraction/index.js", "groupTitle": "Attachments" }, { "type": "put", "url": "/api/attachments/{id}", "title": "Update an existing Attachment", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/attachments/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateAttachments", "group": "Attachments", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/attachment/index.js", "groupTitle": "Attachments" }, { "type": "post", "url": "/api/auth/local/forgot", "title": "Creates a new password reset token", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/auth/local/forgot -d '{\"email\": \"john.doe@xcally.com\"}' \\\n -H \"Content-Type: application/json\" -X POST", "type": "json" } ], "name": "Local_Forgot_Password", "group": "Authentication", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "email", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/authLocal/index.js", "groupTitle": "Authentication" }, { "type": "post", "url": "/api/auth/local/reset/:token", "title": "Reset user password", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/auth/local/reset/94b422c1fkdjhg766a198da6997yu6gcc963641d -d '{\"password\": \"My_newP@ssw0rd\"}' \\\n -H \"Content-Type: application/json\" -X POST", "type": "json" } ], "name": "Local_Reset_Password", "group": "Authentication", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "password", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/authLocal/index.js", "groupTitle": "Authentication" }, { "type": "post", "url": "/api/auth/local", "title": "Creates a new User token", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/auth/local -d '{\"name\": \"john.doe\", \"password\": \"password\"}' \\\n -H \"Content-Type: application/json\" -X POST", "type": "json" } ], "name": "Local_login", "group": "Authentication", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "password", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/authLocal/index.js", "groupTitle": "Authentication" }, { "type": "post", "url": "/api/auth/google", "title": "Creates a new User token", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/auth/google -d '{\"name\": \"john.doe\", \"password\": \"password\"}' \\\n -H \"Content-Type: application/json\" -X POST", "type": "json" } ], "name": "Local_login", "group": "Authentication", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "password", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/authGoogle/index.js", "groupTitle": "Authentication" }, { "type": "post", "url": "/api/automations", "title": "Creates a new Automation", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/automations -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateAutomations", "group": "Automations", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "channel", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "status", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "timeout", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/automation/index.js", "groupTitle": "Automations" }, { "type": "delete", "url": "/api/automations/{id}", "title": "Deletes a Automation", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/automations/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteAutomations", "group": "Automations", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/automation/index.js", "groupTitle": "Automations" }, { "type": "get", "url": "/api/automations", "title": "Gets a list of Automations", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/automations -v -u {name}:{password}", "type": "json" } ], "name": "GetAutomations", "group": "Automations", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/automations?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/automations?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/automations?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/automations?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/automations?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/automation/index.js", "groupTitle": "Automations" }, { "type": "get", "url": "/api/automations/{id}", "title": "Gets a single Automation", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/automations/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowAutomations", "group": "Automations", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/automation/index.js", "groupTitle": "Automations" }, { "type": "post", "url": "/api/automations/{id}/actions", "title": "Creates new actions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/automations/{id}/actions -d '[{\"firstName\": \"John Doe\", \"email\": \"john.doe@xcally.com\", \"...\": \"...\"}]' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addActions", "group": "Automations", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "Virtual", "optional": true, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "action", "description": "

Allowed values: contactManager, integration, motionbar, jscripty, urlForward, browser

" }, { "group": "Body", "type": "String", "optional": true, "field": "data1", "description": "

contactManager[ListId], integration[intName(zendesk)], motionbar[Popup(0),URL(1),WinApp(2)], urlForward[GET,POST], browser[TemplateId(0),URL(1)]

" }, { "group": "Body", "type": "String", "optional": true, "field": "data2", "description": "

integration[AccountId], motionbar[TemplateId,URL,WinAppPath], urlForward[URL]

" }, { "group": "Body", "type": "String", "optional": true, "field": "data3", "description": "

motionbar[NULL,NULL,WinAppArguments]

" }, { "group": "Body", "type": "String", "optional": true, "field": "data4", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "data5", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "data6", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/automation/index.js", "groupTitle": "Automations" }, { "type": "post", "url": "/api/automations/{id}/conditions", "title": "Creates new conditions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/automations/{id}/conditions -d '[{\"firstName\": \"John Doe\", \"email\": \"john.doe@xcally.com\", \"...\": \"...\"}]' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addConditions", "group": "Automations", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "Virtual", "optional": true, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "field", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "operator", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "value", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/automation/index.js", "groupTitle": "Automations" }, { "type": "get", "url": "/api/automations/{id}/actions", "title": "Gets Automation Actions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/automations/{id}/actions -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getActions", "group": "Automations", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/automation/index.js", "groupTitle": "Automations" }, { "type": "get", "url": "/api/automations/{id}/conditions", "title": "Gets Automation Conditions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/automations/{id}/conditions -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getConditions", "group": "Automations", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/automation/index.js", "groupTitle": "Automations" }, { "type": "put", "url": "/api/automations/{id}", "title": "Update an existing Automation", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/automations/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateAutomations", "group": "Automations", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/automation/index.js", "groupTitle": "Automations" }, { "type": "post", "url": "/api/canned_answers", "title": "Create a new canned answer", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/canned_answers -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "Create", "group": "Canned_Answers", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cannedAnswer/index.js", "groupTitle": "Canned_Answers" }, { "type": "delete", "url": "/api/canned_answers/{id}", "title": "Deletes a Canned Answer", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/canned_answers/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteCanned_Answers", "group": "Canned_Answers", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cannedAnswer/index.js", "groupTitle": "Canned_Answers" }, { "type": "get", "url": "/api/canned_answers", "title": "Gets a list of Canned Answers", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/canned_answers -v -u {name}:{password}", "type": "json" } ], "name": "GetCanned_Answers", "group": "Canned_Answers", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/canned_answers?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/canned_answers?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/canned_answers?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/canned_answers?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/canned_answers?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/cannedAnswer/index.js", "groupTitle": "Canned_Answers" }, { "type": "get", "url": "/api/canned_answers/{id}", "title": "Gets a single Canned Answer", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/canned_answers/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowCanned_Answers", "group": "Canned_Answers", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cannedAnswer/index.js", "groupTitle": "Canned_Answers" }, { "type": "put", "url": "/api/canned_answers/{id}", "title": "Update an existing Canned Answer", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/canned_answers/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateCanned_Answers", "group": "Canned_Answers", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cannedAnswer/index.js", "groupTitle": "Canned_Answers" }, { "type": "delete", "url": "/api/chat/applications/{id}", "title": "Deletes a Application", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/applications/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteApplications", "group": "Chat_Applications", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatApplication/index.js", "groupTitle": "Chat_Applications" }, { "type": "get", "url": "/api/chat/applications/{id}", "title": "Gets a single Application", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/applications/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowApplications", "group": "Chat_Applications", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatApplication/index.js", "groupTitle": "Chat_Applications" }, { "type": "put", "url": "/api/chat/applications/{id}", "title": "Update an existing Application", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/applications/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateApplications", "group": "Chat_Applications", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatApplication/index.js", "groupTitle": "Chat_Applications" }, { "type": "post", "url": "/api/chat/dispositions", "title": "Creates a new Disposition", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/dispositions -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateDispositions", "group": "Chat_Dispositions", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "name", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatDisposition/index.js", "groupTitle": "Chat_Dispositions" }, { "type": "delete", "url": "/api/chat/dispositions/{id}", "title": "Deletes a Disposition", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/dispositions/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteDispositions", "group": "Chat_Dispositions", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatDisposition/index.js", "groupTitle": "Chat_Dispositions" }, { "type": "get", "url": "/api/chat/dispositions/{id}", "title": "Gets a single Disposition", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/dispositions/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowDispositions", "group": "Chat_Dispositions", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatDisposition/index.js", "groupTitle": "Chat_Dispositions" }, { "type": "put", "url": "/api/chat/dispositions/{id}", "title": "Update an existing Disposition", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/dispositions/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateDispositions", "group": "Chat_Dispositions", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatDisposition/index.js", "groupTitle": "Chat_Dispositions" }, { "type": "post", "url": "/api/chat/groups", "title": "Creates a new Group", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/groups -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateGroups", "group": "Chat_Groups", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "write", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatGroup/index.js", "groupTitle": "Chat_Groups" }, { "type": "delete", "url": "/api/chat/groups/{id}", "title": "Deletes a Group", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/groups/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteGroups", "group": "Chat_Groups", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatGroup/index.js", "groupTitle": "Chat_Groups" }, { "type": "get", "url": "/api/chat/groups/describe", "title": "Gets table info about Groups", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/groups/describe -v -u {name}:{password}", "type": "json" } ], "name": "DescribeGroups", "group": "Chat_Groups", "description": "

Motion will return a HTTP status code 200 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatGroup/index.js", "groupTitle": "Chat_Groups" }, { "type": "get", "url": "/api/chat/groups", "title": "Gets a list of Groups", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/groups -v -u {name}:{password}", "type": "json" } ], "name": "GetGroups", "group": "Chat_Groups", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/chat/groups?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/chat/groups?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/chat/groups?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/chat/groups?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/chat/groups?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/chatGroup/index.js", "groupTitle": "Chat_Groups" }, { "type": "delete", "url": "/api/chat/groups/{id}/members", "title": "Removes members from a group", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/groups/{id}/members?ids=1&ids=2 -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "RemoveMembers", "group": "Chat_Groups", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatGroup/index.js", "groupTitle": "Chat_Groups" }, { "type": "get", "url": "/api/chat/groups/{id}", "title": "Gets a single Group", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/groups/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowGroups", "group": "Chat_Groups", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatGroup/index.js", "groupTitle": "Chat_Groups" }, { "type": "post", "url": "/api/chat/groups/{id}/members", "title": "Add members to chat group", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/groups/{id}/members -d '{\"ids\": [1,2]}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addMembers", "group": "Chat_Groups", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatGroup/index.js", "groupTitle": "Chat_Groups" }, { "type": "post", "url": "/api/chat/groups/{id}/messages", "title": "Creates a new group message", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/groups/{id}/messages -d '{\"body\": \"Hi operator!\"}' -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addMessage", "group": "Chat_Groups", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatGroup/index.js", "groupTitle": "Chat_Groups" }, { "type": "get", "url": "/api/chat/groups/{id}/members", "title": "Gets Members", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/groups/{id}/members -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getMembers", "group": "Chat_Groups", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatGroup/index.js", "groupTitle": "Chat_Groups" }, { "type": "get", "url": "/api/chat/groups/{id}/messages", "title": "Gets Messages", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/groups/{id}/messages -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getMessages", "group": "Chat_Groups", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatGroup/index.js", "groupTitle": "Chat_Groups" }, { "type": "get", "url": "/api/chat/groups/{id}/unread", "title": "Get unread chat group messages", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/groups/{id}/unread -H 'Content-Type: application/json' -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getUread", "group": "Chat_Groups", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatGroup/index.js", "groupTitle": "Chat_Groups" }, { "type": "put", "url": "/api/chat/groups/{id}", "title": "Update an existing Group", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/groups/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateGroups", "group": "Chat_Groups", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatGroup/index.js", "groupTitle": "Chat_Groups" }, { "type": "post", "url": "/api/chat/interactions/{id}/tags", "title": "Add tags to the interaction", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/interaction/{id}/tags -d '{\"ids\": [1,2]}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "AddTags", "group": "Chat_Interactions", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatInteraction/index.js", "groupTitle": "Chat_Interactions" }, { "type": "post", "url": "/api/chat/interactions", "title": "Creates a new Interaction", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/interactions -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateInteractions", "group": "Chat_Interactions", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "Boolean", "optional": true, "field": "closed", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "ratingValue", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"star\"", "\"thumb\"" ], "optional": true, "field": "ratingType", "description": "" }, { "group": "Body", "type": "Text", "optional": true, "field": "ratingMessage", "description": "" }, { "group": "Body", "type": "Text", "optional": true, "field": "pathTranscript", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "mailTranscript", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "closedAt", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "disposition", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "note", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "browserName", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "browserVersion", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "osName", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "osVersion", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "deviceModel", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "deviceVendor", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "deviceType", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "referer", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "customerIp", "description": "" }, { "group": "Body", "type": "Text", "optional": true, "field": "formData", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "read1stAt", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "lastMsgAt", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"in\"", "\"out\"" ], "optional": false, "field": "lastMsgDirection", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatInteraction/index.js", "groupTitle": "Chat_Interactions" }, { "type": "delete", "url": "/api/chat/interactions/{id}", "title": "Deletes a Interaction", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/interactions/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteInteractions", "group": "Chat_Interactions", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatInteraction/index.js", "groupTitle": "Chat_Interactions" }, { "type": "get", "url": "/api/chat/interactions/describe", "title": "Gets table info about Interactions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/interactions/describe -v -u {name}:{password}", "type": "json" } ], "name": "DescribeInteractions", "group": "Chat_Interactions", "description": "

Motion will return a HTTP status code 200 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatInteraction/index.js", "groupTitle": "Chat_Interactions" }, { "type": "get", "url": "/api/chat/interactions", "title": "Gets a list of Interactions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/interactions -v -u {name}:{password}", "type": "json" } ], "name": "GetInteractions", "group": "Chat_Interactions", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/chat/interactions?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/chat/interactions?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/chat/interactions?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/chat/interactions?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/chat/interactions?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/chatInteraction/index.js", "groupTitle": "Chat_Interactions" }, { "type": "delete", "url": "/api/chat/interactions/{id}/tags", "title": "Removes tags from interaction", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/interactions/{id}/tags?ids=1&ids=2 -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "RemoveTags", "group": "Chat_Interactions", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatInteraction/index.js", "groupTitle": "Chat_Interactions" }, { "type": "get", "url": "/api/chat/interactions/{id}", "title": "Gets a single Interaction", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/interactions/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowInteractions", "group": "Chat_Interactions", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatInteraction/index.js", "groupTitle": "Chat_Interactions" }, { "type": "put", "url": "/api/chat/interactions/{id}/abandon", "title": "Abandon interaction", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/interactions/{id}/abandon -d '{\"channel\": \"chat\", \"...\": \"...\"}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "abandon", "group": "Chat_Interactions", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

This API is used to set as abandon an interaction and stop the routing.

", "version": "0.0.0", "filename": "server/api/chatInteraction/index.js", "groupTitle": "Chat_Interactions" }, { "type": "post", "url": "/api/chat/interactions/{id}/messages", "title": "Creates new messages", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/interactions/{id}/messages -d '[{\"to\": \"+3901119886500\", \"...\": \"...\"}]' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addMessage", "group": "Chat_Interactions", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "Text", "optional": false, "field": "body", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "read", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "secret", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"in\"", "\"out\"" ], "optional": false, "field": "direction", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "readAt", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatInteraction/index.js", "groupTitle": "Chat_Interactions" }, { "type": "put", "url": "/api/chat/interactions/{id}/close", "title": "Close Interaction", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/interactions/{id}/close -d '[{\"to\": \"+3901119886500\", \"...\": \"...\"}]' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addMessage", "group": "Chat_Interactions", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatInteraction/index.js", "groupTitle": "Chat_Interactions" }, { "type": "post", "url": "/api/chat/interactions/{id}/attachment_upload", "title": "Add attachment", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/interactions/{id}/attachment_upload -H 'Content-Type: multipart/form-data' -F 'file=@{filename}' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "attachmentUpload", "group": "Chat_Interactions", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatInteraction/index.js", "groupTitle": "Chat_Interactions" }, { "type": "get", "url": "/api/chat/interactions/{id}/messages", "title": "Gets interaction messages", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/interactions/{id}/messages -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getMessages", "group": "Chat_Interactions", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatInteraction/index.js", "groupTitle": "Chat_Interactions" }, { "type": "get", "url": "/api/chat/interactions/{id}/my_messages", "title": "Gets interaction messages", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/interactions/{id}/my_messages -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getMyMessages", "group": "Chat_Interactions", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatInteraction/index.js", "groupTitle": "Chat_Interactions" }, { "type": "put", "url": "/api/chat/interactions/{id}", "title": "Update an existing Interaction", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/interactions/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateInteractions", "group": "Chat_Interactions", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatInteraction/index.js", "groupTitle": "Chat_Interactions" }, { "type": "post", "url": "/api/chat/internal/messages", "title": "Creates a new Message", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/internal/messages -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateMessages", "group": "Chat_Internal_Messages", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "Text", "optional": false, "field": "body", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "read", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "ChatInternalMessageId", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatInternalMessage/index.js", "groupTitle": "Chat_Internal_Messages" }, { "type": "delete", "url": "/api/chat/internal/messages/{id}", "title": "Deletes a Message", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/internal/messages/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteMessages", "group": "Chat_Internal_Messages", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatInternalMessage/index.js", "groupTitle": "Chat_Internal_Messages" }, { "type": "get", "url": "/api/chat/internal/messages/describe", "title": "Gets table info about Messages", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/internal/messages/describe -v -u {name}:{password}", "type": "json" } ], "name": "DescribeMessages", "group": "Chat_Internal_Messages", "description": "

Motion will return a HTTP status code 200 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatInternalMessage/index.js", "groupTitle": "Chat_Internal_Messages" }, { "type": "get", "url": "/api/chat/internal/messages", "title": "Gets a list of Messages", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/internal/messages -v -u {name}:{password}", "type": "json" } ], "name": "GetMessages", "group": "Chat_Internal_Messages", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/chat/internal/messages?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/chat/internal/messages?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/chat/internal/messages?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/chat/internal/messages?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/chat/internal/messages?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/chatInternalMessage/index.js", "groupTitle": "Chat_Internal_Messages" }, { "type": "get", "url": "/api/chat/internal/messages/{id}", "title": "Gets a single Message", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/internal/messages/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowMessages", "group": "Chat_Internal_Messages", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatInternalMessage/index.js", "groupTitle": "Chat_Internal_Messages" }, { "type": "put", "url": "/api/chat/internal/messages/{id}", "title": "Update an existing Message", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/internal/messages/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateMessages", "group": "Chat_Internal_Messages", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatInternalMessage/index.js", "groupTitle": "Chat_Internal_Messages" }, { "type": "post", "url": "/api/chat/messages", "title": "Creates a new Message", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/messages -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateMessages", "group": "Chat_Messages", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "Text", "optional": false, "field": "body", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "read", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "secret", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"in\"", "\"out\"" ], "optional": false, "field": "direction", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "readAt", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatMessage/index.js", "groupTitle": "Chat_Messages" }, { "type": "delete", "url": "/api/chat/messages/{id}", "title": "Deletes a Message", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/messages/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteMessages", "group": "Chat_Messages", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatMessage/index.js", "groupTitle": "Chat_Messages" }, { "type": "get", "url": "/api/chat/messages/describe", "title": "Gets table info about Messages", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/messages/describe -v -u {name}:{password}", "type": "json" } ], "name": "DescribeMessages", "group": "Chat_Messages", "description": "

Motion will return a HTTP status code 200 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatMessage/index.js", "groupTitle": "Chat_Messages" }, { "type": "get", "url": "/api/chat/messages", "title": "Gets a list of Messages", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/messages -v -u {name}:{password}", "type": "json" } ], "name": "GetMessages", "group": "Chat_Messages", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/chat/messages?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/chat/messages?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/chat/messages?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/chat/messages?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/chat/messages?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/chatMessage/index.js", "groupTitle": "Chat_Messages" }, { "type": "get", "url": "/api/chat/messages/{id}", "title": "Gets a single Message", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/messages/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowMessages", "group": "Chat_Messages", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatMessage/index.js", "groupTitle": "Chat_Messages" }, { "type": "put", "url": "/api/chat/messages/{id}", "title": "Update an existing Message", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/messages/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateMessages", "group": "Chat_Messages", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatMessage/index.js", "groupTitle": "Chat_Messages" }, { "type": "post", "url": "/api/chat/offline_messages", "title": "Creates a new OfflineMessage", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/offline_messages -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateOfflineMessages", "group": "Chat_Offline_Messages", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "Text", "optional": false, "field": "body", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatOfflineMessage/index.js", "groupTitle": "Chat_Offline_Messages" }, { "type": "delete", "url": "/api/chat/offline_messages/{id}", "title": "Deletes a OfflineMessage", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/offline_messages/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteOfflineMessages", "group": "Chat_Offline_Messages", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatOfflineMessage/index.js", "groupTitle": "Chat_Offline_Messages" }, { "type": "get", "url": "/api/chat/offline_messages/describe", "title": "Gets table info about OfflineMessages", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/offline_messages/describe -v -u {name}:{password}", "type": "json" } ], "name": "DescribeOfflineMessages", "group": "Chat_Offline_Messages", "description": "

Motion will return a HTTP status code 200 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatOfflineMessage/index.js", "groupTitle": "Chat_Offline_Messages" }, { "type": "get", "url": "/api/chat/offline_messages", "title": "Gets a list of OfflineMessages", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/offline_messages -v -u {name}:{password}", "type": "json" } ], "name": "GetOfflineMessages", "group": "Chat_Offline_Messages", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/chat/offline_messages?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/chat/offline_messages?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/chat/offline_messages?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/chat/offline_messages?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/chat/offline_messages?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/chatOfflineMessage/index.js", "groupTitle": "Chat_Offline_Messages" }, { "type": "get", "url": "/api/chat/offline_messages/{id}", "title": "Gets a single OfflineMessage", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/offline_messages/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowOfflineMessages", "group": "Chat_Offline_Messages", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatOfflineMessage/index.js", "groupTitle": "Chat_Offline_Messages" }, { "type": "put", "url": "/api/chat/offline_messages/{id}", "title": "Update an existing OfflineMessage", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/offline_messages/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateOfflineMessages", "group": "Chat_Offline_Messages", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatOfflineMessage/index.js", "groupTitle": "Chat_Offline_Messages" }, { "type": "post", "url": "/api/chat/proactive_actions", "title": "Creates a new Proactive Action", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/proactive_actions -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateProactive_Actions", "group": "Chat_Proactive_Actions", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "name", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"mouseOver\"", "\"timeout\"" ], "optional": true, "field": "type", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "selector", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "timeout", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatProactiveAction/index.js", "groupTitle": "Chat_Proactive_Actions" }, { "type": "delete", "url": "/api/chat/proactive_actions/{id}", "title": "Deletes a Proactive Action", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/proactive_actions/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteProactive_Actions", "group": "Chat_Proactive_Actions", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatProactiveAction/index.js", "groupTitle": "Chat_Proactive_Actions" }, { "type": "get", "url": "/api/chat/proactive_actions/{id}", "title": "Gets a single Proactive Action", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/proactive_actions/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowProactive_Actions", "group": "Chat_Proactive_Actions", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatProactiveAction/index.js", "groupTitle": "Chat_Proactive_Actions" }, { "type": "put", "url": "/api/chat/proactive_actions/{id}", "title": "Update an existing Proactive Action", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/proactive_actions/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateProactive_Actions", "group": "Chat_Proactive_Actions", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatProactiveAction/index.js", "groupTitle": "Chat_Proactive_Actions" }, { "type": "post", "url": "/api/chat/reports/queue", "title": "Creates a new Chat Queue Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/reports/queue -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateChat_Queue_Reports", "group": "Chat_Queue_Reports", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "uniqueid", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "from", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "joinAt", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "leaveAt", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "acceptAt", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "exitAt", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "reason", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatQueueReport/index.js", "groupTitle": "Chat_Queue_Reports" }, { "type": "delete", "url": "/api/chat/reports/queue/{id}", "title": "Deletes a Chat Queue Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/reports/queue/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteChat_Queue_Reports", "group": "Chat_Queue_Reports", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatQueueReport/index.js", "groupTitle": "Chat_Queue_Reports" }, { "type": "get", "url": "/api/chat/reports/queue/describe", "title": "Gets table info about Chat Queue Reports", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/reports/queue/describe -v -u {name}:{password}", "type": "json" } ], "name": "DescribeChat_Queue_Reports", "group": "Chat_Queue_Reports", "description": "

Motion will return a HTTP status code 200 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatQueueReport/index.js", "groupTitle": "Chat_Queue_Reports" }, { "type": "get", "url": "/api/chat/reports/queue", "title": "Gets a list of Chat Queue Reports", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/reports/queue -v -u {name}:{password}", "type": "json" } ], "name": "GetChat_Queue_Reports", "group": "Chat_Queue_Reports", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/chat/reports/queue?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/chat/reports/queue?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/chat/reports/queue?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/chat/reports/queue?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/chat/reports/queue?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/chatQueueReport/index.js", "groupTitle": "Chat_Queue_Reports" }, { "type": "get", "url": "/api/chat/reports/queue/{id}", "title": "Gets a single Chat Queue Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/reports/queue/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowChat_Queue_Reports", "group": "Chat_Queue_Reports", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatQueueReport/index.js", "groupTitle": "Chat_Queue_Reports" }, { "type": "put", "url": "/api/chat/reports/queue/{id}", "title": "Update an existing Chat Queue Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/reports/queue/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateChat_Queue_Reports", "group": "Chat_Queue_Reports", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatQueueReport/index.js", "groupTitle": "Chat_Queue_Reports" }, { "type": "post", "url": "/api/chat/queues/{id}/users", "title": "Add agents to a queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/queues/{id}/users -d '{\"ids\": [1,2], \"penalty\": 2}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "AddAgents", "group": "Chat_Queues", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatQueue/index.js", "groupTitle": "Chat_Queues" }, { "type": "post", "url": "/api/chat/queues/{id}/teams", "title": "Add teams to a queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/queues/{id}/teams -d '{\"ids\": [1,2]}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "AddTeams", "group": "Chat_Queues", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatQueue/index.js", "groupTitle": "Chat_Queues" }, { "type": "post", "url": "/api/chat/queues", "title": "Creates a new Queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/queues -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateQueues", "group": "Chat_Queues", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "timeout", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"rrmemory\"", "\"beepall\"", "\"roundrobin\"" ], "optional": true, "field": "strategy", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatQueue/index.js", "groupTitle": "Chat_Queues" }, { "type": "delete", "url": "/api/chat/queues/{id}", "title": "Deletes a Queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/queues/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteQueues", "group": "Chat_Queues", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatQueue/index.js", "groupTitle": "Chat_Queues" }, { "type": "get", "url": "/api/chat/queues/describe", "title": "Gets table info about Queues", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/queues/describe -v -u {name}:{password}", "type": "json" } ], "name": "DescribeQueues", "group": "Chat_Queues", "description": "

Motion will return a HTTP status code 200 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatQueue/index.js", "groupTitle": "Chat_Queues" }, { "type": "get", "url": "/api/chat/queues/{id}/users", "title": "Gets queue agents", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/queues/{id}/users -v -u {name}:{password} -X POST", "type": "json" } ], "name": "GetAgents", "group": "Chat_Queues", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatQueue/index.js", "groupTitle": "Chat_Queues" }, { "type": "get", "url": "/api/chat/queues/{id}/members", "title": "GetMembers", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/queues/{id}/members -v -u {name}:{password}", "type": "json" } ], "name": "GetMembers", "group": "Chat_Queues", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatQueue/index.js", "groupTitle": "Chat_Queues" }, { "type": "get", "url": "/api/chat/queues", "title": "Gets a list of Queues", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/queues -v -u {name}:{password}", "type": "json" } ], "name": "GetQueues", "group": "Chat_Queues", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/chat/queues?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/chat/queues?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/chat/queues?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/chat/queues?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/chat/queues?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/chatQueue/index.js", "groupTitle": "Chat_Queues" }, { "type": "get", "url": "/api/chat/queues/{id}/teams", "title": "Gets queues list", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/queues/{id}/teams -v -u {name}:{password}", "type": "json" } ], "name": "GetTeams", "group": "Chat_Queues", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatQueue/index.js", "groupTitle": "Chat_Queues" }, { "type": "delete", "url": "/api/chat/queues/{id}/users", "title": "Removes agents from a queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/queues/{id}/users?ids=1&ids=2 -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "RemoveAgents", "group": "Chat_Queues", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatQueue/index.js", "groupTitle": "Chat_Queues" }, { "type": "get", "url": "/api/chat/queues/{id}", "title": "Gets a single Queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/queues/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowQueues", "group": "Chat_Queues", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatQueue/index.js", "groupTitle": "Chat_Queues" }, { "type": "put", "url": "/api/chat/queues/{id}", "title": "Update an existing Queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/queues/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateQueues", "group": "Chat_Queues", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatQueue/index.js", "groupTitle": "Chat_Queues" }, { "type": "post", "url": "/api/chat/websites", "title": "Creates a new Website", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/websites -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateWebsites", "group": "Chat_Websites", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "address", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "mapKey", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "mapKeyOffline", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "key", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "agentAlias", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "color", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "color_button", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "textColor", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "fontSize", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "remote", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "animation", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"rounded\"", "\"squared\"" ], "optional": true, "field": "header_shape", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "header_online", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "start_chat_button", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "offline_chat_button", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "header_offline", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "download_transcript", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "timeout", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "whiteLabel", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "defaultWhiteLabel", "description": "" }, { "group": "Body", "type": "Text", "optional": true, "field": "sitepic", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "closingQuestion", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "formSubmitSuccessMessage", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "formSubmitFailureMessage", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "noteTitle", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "placeholderMessage", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "closingMessage", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "closingMessageButton", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "skipMessageButton", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "conditionAgreement", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "enableRating", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "enableFeedback", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"star\"", "\"thumb\"" ], "optional": true, "field": "ratingType", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "ratingStarsNumber", "description": "" }, { "group": "Body", "type": "Text", "optional": true, "field": "onlineForm", "description": "" }, { "group": "Body", "type": "Text", "optional": true, "field": "offlineForm", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "token", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "autoclose", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "enableCustomerWriting", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "forwardTranscript", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "forwardTranscriptMessage", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "forwardOffline", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "forwardOfflineAddress", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "waitingTitle", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "waitingMessage", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "offlineMessageSubject", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "offlineMessageBody", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "enableUnmanagedNote", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "unmanagedMessage", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "skipUnmanaged", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "sendUnmanaged", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "enableCustomerAttachment", "description": "" }, { "group": "Body", "type": "Text", "optional": true, "field": "agentAvatar", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "showAgentAvatar", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "timezone", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatWebsite/index.js", "groupTitle": "Chat_Websites" }, { "type": "delete", "url": "/api/chat/websites/{id}", "title": "Deletes a Website", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/websites/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteWebsites", "group": "Chat_Websites", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatWebsite/index.js", "groupTitle": "Chat_Websites" }, { "type": "get", "url": "/api/chat/websites/describe", "title": "Gets table info about Websites", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/websites/describe -v -u {name}:{password}", "type": "json" } ], "name": "DescribeWebsites", "group": "Chat_Websites", "description": "

Motion will return a HTTP status code 200 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatWebsite/index.js", "groupTitle": "Chat_Websites" }, { "type": "get", "url": "/api/chat/websites", "title": "Gets a list of Websites", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/websites -v -u {name}:{password}", "type": "json" } ], "name": "GetWebsites", "group": "Chat_Websites", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/chat/websites?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/chat/websites?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/chat/websites?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/chat/websites?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/chat/websites?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/chatWebsite/index.js", "groupTitle": "Chat_Websites" }, { "type": "delete", "url": "/api/openchannel/accounts/{id}/canned_answers", "title": "Removes canned answers from account", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/accounts/{id}/canned_answers?ids=1&ids=2 -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "RemoveAnswers", "group": "Chat_Websites", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatWebsite/index.js", "groupTitle": "Chat_Websites" }, { "type": "get", "url": "/api/chat/websites/{id}", "title": "Gets a single Website", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/websites/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowWebsites", "group": "Chat_Websites", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatWebsite/index.js", "groupTitle": "Chat_Websites" }, { "type": "put", "url": "/api/chat/messages/{id}/accept", "title": "Accepts message", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/messages/{id}/accept \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "acceptMessage", "group": "Chat_Websites", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatMessage/index.js", "groupTitle": "Chat_Websites" }, { "type": "post", "url": "/api/chat/websites/{id}/canned_answers", "title": "Creates new canned answer", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/websites/{id}/canned_answers -d '{\"name\": \"vip\"}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addAnswer", "group": "Chat_Websites", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "key", "description": "" }, { "group": "Body", "type": "Text", "optional": false, "field": "value", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatWebsite/index.js", "groupTitle": "Chat_Websites" }, { "type": "post", "url": "/api/chat/websites/{id}/applications", "title": "Creates new applications", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/websites/{id}/applications -d '[{\"app\": \"queue\", \"...\": \"...\"}]' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addApplications", "group": "Chat_Websites", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "Integer", "optional": false, "field": "priority", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "app", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "appdata", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "interval", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatWebsite/index.js", "groupTitle": "Chat_Websites" }, { "type": "post", "url": "/api/chat/websites/{id}/avatar", "title": "Add avatar", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/websites/{id}/avatar -H 'Content-Type: multipart/form-data' -F 'file=@{filename}' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addAvatar", "group": "Chat_Websites", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatWebsite/index.js", "groupTitle": "Chat_Websites" }, { "type": "post", "url": "/api/chat/websites/{id}/dispositions", "title": "Creates new disposition", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/websites/{id}/dispositions -d '{\"name\": \"Satisfied\"}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addDisposition", "group": "Chat_Websites", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "name", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatWebsite/index.js", "groupTitle": "Chat_Websites" }, { "type": "post", "url": "/api/chat/websites/{id}/dispositions", "title": "Creates many dispositions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/websites/{id}/dispositions -d '[{\"name\": \"Satisfied\"}]' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addDispositions", "group": "Chat_Websites", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "name", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatWebsite/index.js", "groupTitle": "Chat_Websites" }, { "type": "post", "url": "/api/chat/accounts/{id}/interactions", "title": "Creates new interactions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/websites/{id}/interactions -d '{\"host\": \"host\", \"username\": \"username\", \"password\": \"password\", \"...\": \"...\"}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addInteraction", "group": "Chat_Websites", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "Boolean", "optional": true, "field": "closed", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "ratingValue", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"star\"", "\"thumb\"" ], "optional": true, "field": "ratingType", "description": "" }, { "group": "Body", "type": "Text", "optional": true, "field": "ratingMessage", "description": "" }, { "group": "Body", "type": "Text", "optional": true, "field": "pathTranscript", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "mailTranscript", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "closedAt", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "disposition", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "note", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "browserName", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "browserVersion", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "osName", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "osVersion", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "deviceModel", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "deviceVendor", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "deviceType", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "referer", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "customerIp", "description": "" }, { "group": "Body", "type": "Text", "optional": true, "field": "formData", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "read1stAt", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "lastMsgAt", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"in\"", "\"out\"" ], "optional": false, "field": "lastMsgDirection", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatWebsite/index.js", "groupTitle": "Chat_Websites" }, { "type": "post", "url": "/api/chat/websites/{id}/logo", "title": "Add logo", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/websites/{id}/logo -H 'Content-Type: multipart/form-data' -F 'file=@{filename}' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addLogo", "group": "Chat_Websites", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatWebsite/index.js", "groupTitle": "Chat_Websites" }, { "type": "post", "url": "/api/chat/websites/{id}/proactive_actions", "title": "Creates new Proactive Actions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/websites/{id}/proactive_actions -d '[{\"name\": \"Satisfied\"}]' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addProactiveActions", "group": "Chat_Websites", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "name", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"mouseOver\"", "\"timeout\"" ], "optional": true, "field": "type", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "selector", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "timeout", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatWebsite/index.js", "groupTitle": "Chat_Websites" }, { "type": "get", "url": "/api/chat/websites/{id}/canned_answers", "title": "Gets account canned answers", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/websites/{id}/canned_answers -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getAnswers", "group": "Chat_Websites", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatWebsite/index.js", "groupTitle": "Chat_Websites" }, { "type": "get", "url": "/api/chat/websites/{id}/applications", "title": "Gets Website Applications", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/websites/{id}/applications -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getApplications", "group": "Chat_Websites", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatWebsite/index.js", "groupTitle": "Chat_Websites" }, { "type": "get", "url": "/api/chat/websites/{id}/avatar", "title": "Get avatar", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/websites/{id}/avatar -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getAvatar", "group": "Chat_Websites", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatWebsite/index.js", "groupTitle": "Chat_Websites" }, { "type": "get", "url": "/api/chat/websites/{id}/dispositions", "title": "Gets Website Dispositions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/websites/{id}/dispositions -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getDispositions", "group": "Chat_Websites", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatWebsite/index.js", "groupTitle": "Chat_Websites" }, { "type": "get", "url": "/api/chat/websites/{id}/fields", "title": "Gets Website Fields", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/websites/{id}/fields -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getFields", "group": "Chat_Websites", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatWebsite/index.js", "groupTitle": "Chat_Websites" }, { "type": "get", "url": "/api/chat/websites/{id}/interactions", "title": "Gets Website Interactions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/websites/{id}/interactions -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getInteraction", "group": "Chat_Websites", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatWebsite/index.js", "groupTitle": "Chat_Websites" }, { "type": "get", "url": "/api/chat/websites/{id}/logo", "title": "Get logo", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/websites/{id}/logo -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getLogo", "group": "Chat_Websites", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatWebsite/index.js", "groupTitle": "Chat_Websites" }, { "type": "get", "url": "/api/chat/websites/{id}/offline_messages", "title": "Gets Website Offline Messages", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/websites/{id}/offline_messages -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getOfflineMessages", "group": "Chat_Websites", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatWebsite/index.js", "groupTitle": "Chat_Websites" }, { "type": "get", "url": "/api/chat/websites/{id}/proactive_actions", "title": "Gets Website Proactive Actions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/websites/{id}/proactive_actions -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getProactiveActions", "group": "Chat_Websites", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatWebsite/index.js", "groupTitle": "Chat_Websites" }, { "type": "get", "url": "/api/chat/websites/{id}/snippet", "title": "Gets Website Snippet", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/websites/{id}/snippet -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getSnippet", "group": "Chat_Websites", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatWebsite/index.js", "groupTitle": "Chat_Websites" }, { "type": "post", "url": "/api/chat/websites/{id}/notify", "title": "Notify new message", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/websites/{id}/notify -d '{\"body\": \"hello world\", \"...\": \"...\"}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "notify", "group": "Chat_Websites", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

This API is used to create a new chat message to be sent to the system.

", "version": "0.0.0", "filename": "server/api/chatWebsite/index.js", "groupTitle": "Chat_Websites" }, { "type": "post", "url": "/api/chat/websites/{id}/offline", "title": "Offline message", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/websites/{id}/offline -d '{\"body\": \"hello world\", \"...\": \"...\"}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "offline", "group": "Chat_Websites", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatWebsite/index.js", "groupTitle": "Chat_Websites" }, { "type": "put", "url": "/api/chat/messages/{id}/reject", "title": "Rejects message", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/messages/{id}/reject \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "rejectMessage", "group": "Chat_Websites", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatMessage/index.js", "groupTitle": "Chat_Websites" }, { "type": "put", "url": "/api/chat/websites/{id}", "title": "Update an existing Website", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/websites/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateWebsites", "group": "Chat_Websites", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatWebsite/index.js", "groupTitle": "Chat_Websites" }, { "type": "post", "url": "/api/cm/companies", "title": "Creates a new Company", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/companies -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateCompanies", "group": "Cm_Companies", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "vat", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "companyId", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "website", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "phone", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "fax", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "type", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "street", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "postalCode", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "city", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "country", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "email", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "emailDomain", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "sStreet", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "sPostalCode", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "sCity", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "sCountry", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmCompany/index.js", "groupTitle": "Cm_Companies" }, { "type": "delete", "url": "/api/cm/companies/{id}", "title": "Deletes a Company", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/companies/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteCompanies", "group": "Cm_Companies", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmCompany/index.js", "groupTitle": "Cm_Companies" }, { "type": "get", "url": "/api/cm/companies", "title": "Gets a list of Companies", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/companies -v -u {name}:{password}", "type": "json" } ], "name": "GetCompanies", "group": "Cm_Companies", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/cm/companies?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/cm/companies?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/cm/companies?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/cm/companies?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/cm/companies?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/cmCompany/index.js", "groupTitle": "Cm_Companies" }, { "type": "get", "url": "/api/cm/companies/{id}", "title": "Gets a single Company", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/companies/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowCompanies", "group": "Cm_Companies", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmCompany/index.js", "groupTitle": "Cm_Companies" }, { "type": "post", "url": "/api/cm/companies/{id}/contacts", "title": "Creates new contacts", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/companies/{id}/contacts -d '[{\"firstName\": \"John Doe\", \"email\": \"john.doe@xcally.com\", \"...\": \"...\"}]' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addContacts", "group": "Cm_Companies", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "firstName", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "lastName", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "tags", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "street", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "postalCode", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "city", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "country", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "dateOfBirth", "description": "" }, { "group": "Body", "type": "Text", "optional": true, "field": "description", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "phone", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "mobile", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "fax", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "email", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "url", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "facebook", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "twitter", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmCompany/index.js", "groupTitle": "Cm_Companies" }, { "type": "get", "url": "/api/cm/companies/{id}/contacts", "title": "Gets List Contacts", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/companies/{id}/contacts -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getContacts", "group": "Cm_Companies", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmCompany/index.js", "groupTitle": "Cm_Companies" }, { "type": "put", "url": "/api/cm/companies/{id}", "title": "Update an existing Company", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/companies/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateCompanies", "group": "Cm_Companies", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmCompany/index.js", "groupTitle": "Cm_Companies" }, { "type": "delete", "url": "/api/cm/contacts/{id}", "title": "Deletes a Contact", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/contacts/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteContacts", "group": "Cm_Contacts", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmContact/index.js", "groupTitle": "Cm_Contacts" }, { "type": "get", "url": "/api/cm/contacts/describe", "title": "Gets table info about Contacts", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/contacts/describe -v -u {name}:{password}", "type": "json" } ], "name": "DescribeContacts", "group": "Cm_Contacts", "description": "

Motion will return a HTTP status code 200 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmContact/index.js", "groupTitle": "Cm_Contacts" }, { "type": "get", "url": "/api/cm/contacts/{id}/finals", "title": "Gets contact hopper finals", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/contacts/{id}/hopper_finals -v -u {name}:{password} -X GET", "type": "json" } ], "name": "GetHopperFinals", "group": "Cm_Contacts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmContact/index.js", "groupTitle": "Cm_Contacts" }, { "type": "get", "url": "/api/cm/contacts/{id}/hopper_histories", "title": "Gets contact hopper histories", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/contacts/{id}/hopper_histories -v -u {name}:{password} -X GET", "type": "json" } ], "name": "GetHopperHistories", "group": "Cm_Contacts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmContact/index.js", "groupTitle": "Cm_Contacts" }, { "type": "get", "url": "/api/cm/contacts/{id}/hoppers", "title": "Gets contact hoppers", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/contacts/{id}/hoppers -v -u {name}:{password} -X GET", "type": "json" } ], "name": "GetHoppers", "group": "Cm_Contacts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmContact/index.js", "groupTitle": "Cm_Contacts" }, { "type": "post", "url": "/api/cm/contacts", "title": "Create Contacts", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/contacts -d '[{\"firstName\": \"John\", \"lastName\": \"doe\", \"...\": \"...\"}]' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "create", "group": "Cm_Contacts", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmContact/index.js", "groupTitle": "Cm_Contacts" }, { "type": "post", "url": "/api/cm/contacts", "title": "Create Contact", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/contacts -d '{\"firstName\": \"John\", \"lastName\": \"doe\", \"...\": \"...\"}' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "create", "group": "Cm_Contacts", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmContact/index.js", "groupTitle": "Cm_Contacts" }, { "type": "get", "url": "/api/cm/contacts/{id}/jscripty_sessions", "title": "Gets contact hopper blacks", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/contacts/{id}/hopper_black -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getJscriptySessions", "group": "Cm_Contacts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmContact/index.js", "groupTitle": "Cm_Contacts" }, { "type": "get", "url": "/api/cm/contacts", "title": "Gets all the Contacts", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/contacts -v -u {name}:{password} -X GET", "type": "json" } ], "name": "index", "group": "Cm_Contacts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmContact/index.js", "groupTitle": "Cm_Contacts" }, { "type": "post", "url": "/api/cm/contacts/merge", "title": "Merge Contact", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/contacts/merge -d '{\"ids\": [1, 2, 3]}' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "merge", "group": "Cm_Contacts", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmContact/index.js", "groupTitle": "Cm_Contacts" }, { "type": "get", "url": "/api/cm/contacts/{id}", "title": "Gets a single Contact", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/contacts/{id} -v -u {name}:{password} -X GET", "type": "json" } ], "name": "show", "group": "Cm_Contacts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmContact/index.js", "groupTitle": "Cm_Contacts" }, { "type": "put", "url": "/api/cm/contacts/{id}", "title": "Update a single Contact", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/contacts/{id} -d '{\"fullName\": \"John\", \"lastName\": \"Doe\"}' -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "update", "group": "Cm_Contacts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmContact/index.js", "groupTitle": "Cm_Contacts" }, { "type": "delete", "url": "/api/cm/custom_fields/{id}", "title": "Deletes a Custom Field", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/custom_fields/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteCustom_Fields", "group": "Cm_Custom_Fields", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmCustomField/index.js", "groupTitle": "Cm_Custom_Fields" }, { "type": "get", "url": "/api/cm/custom_fields", "title": "Gets a list of Custom Fields", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/custom_fields -v -u {name}:{password}", "type": "json" } ], "name": "GetCustom_Fields", "group": "Cm_Custom_Fields", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/cm/custom_fields?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/cm/custom_fields?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/cm/custom_fields?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/cm/custom_fields?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/cm/custom_fields?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/cmCustomField/index.js", "groupTitle": "Cm_Custom_Fields" }, { "type": "get", "url": "/api/cm/custom_fields/{id}", "title": "Gets a single Custom Field", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/custom_fields/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowCustom_Fields", "group": "Cm_Custom_Fields", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmCustomField/index.js", "groupTitle": "Cm_Custom_Fields" }, { "type": "put", "url": "/api/cm/custom_fields/{id}", "title": "Update an existing Custom Field", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/custom_fields/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateCustom_Fields", "group": "Cm_Custom_Fields", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmCustomField/index.js", "groupTitle": "Cm_Custom_Fields" }, { "type": "post", "url": "/api/cm/hopper", "title": "Creates a new Hopper", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/hopper -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateHopper", "group": "Cm_Hopper", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "phone", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "active", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "scheduledat", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "countbusyretry", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "countcongestionretry", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "countnoanswerretry", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "callback", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "callbackuniqueid", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "callbackat", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "priority", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "recallme", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "ContactId", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "ListId", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "UserId", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "VoiceQueueId", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "CampaignId", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmHopper/index.js", "groupTitle": "Cm_Hopper" }, { "type": "get", "url": "/api/cm/hopper/describe", "title": "Gets table info about Hopper", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/hopper/describe -v -u {name}:{password}", "type": "json" } ], "name": "DescribeHopper", "group": "Cm_Hopper", "description": "

Motion will return a HTTP status code 200 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmHopper/index.js", "groupTitle": "Cm_Hopper" }, { "type": "get", "url": "/api/cm/hopper", "title": "Gets a list of Hopper", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/hopper -v -u {name}:{password}", "type": "json" } ], "name": "GetHopper", "group": "Cm_Hopper", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/cm/hopper?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/cm/hopper?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/cm/hopper?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/cm/hopper?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/cm/hopper?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/cmHopper/index.js", "groupTitle": "Cm_Hopper" }, { "type": "get", "url": "/api/cm/hopper/{id}", "title": "Gets a single Hopper", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/hopper/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowHopper", "group": "Cm_Hopper", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmHopper/index.js", "groupTitle": "Cm_Hopper" }, { "type": "delete", "url": "/api/cm/hopper_black/{id}", "title": "Deletes a Hopper Black", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/hopper_black/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteHopper_Black", "group": "Cm_Hopper_Black", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmHopperBlack/index.js", "groupTitle": "Cm_Hopper_Black" }, { "type": "get", "url": "/api/cm/hopper_black/describe", "title": "Gets table info about Hopper Black", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/hopper_black/describe -v -u {name}:{password}", "type": "json" } ], "name": "DescribeHopper_Black", "group": "Cm_Hopper_Black", "description": "

Motion will return a HTTP status code 200 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmHopperBlack/index.js", "groupTitle": "Cm_Hopper_Black" }, { "type": "get", "url": "/api/cm/hopper_black", "title": "Gets a list of Hopper Black", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/hopper_black -v -u {name}:{password}", "type": "json" } ], "name": "GetHopper_Black", "group": "Cm_Hopper_Black", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/cm/hopper_black?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/cm/hopper_black?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/cm/hopper_black?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/cm/hopper_black?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/cm/hopper_black?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/cmHopperBlack/index.js", "groupTitle": "Cm_Hopper_Black" }, { "type": "get", "url": "/api/cm/hopper_black/{id}", "title": "Gets a single Hopper Black", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/hopper_black/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowHopper_Black", "group": "Cm_Hopper_Black", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmHopperBlack/index.js", "groupTitle": "Cm_Hopper_Black" }, { "type": "put", "url": "/api/cm/hopper_black/{id}", "title": "Update an existing Hopper Black", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/hopper_black/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateHopper_Black", "group": "Cm_Hopper_Black", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmHopperBlack/index.js", "groupTitle": "Cm_Hopper_Black" }, { "type": "get", "url": "/api/cm/hopper_final/describe", "title": "Gets table info about HopperFinal", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/hopper_final/describe -v -u {name}:{password}", "type": "json" } ], "name": "DescribeHopperFinal", "group": "Cm_Hopper_Final", "description": "

Motion will return a HTTP status code 200 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmHopperFinal/index.js", "groupTitle": "Cm_Hopper_Final" }, { "type": "get", "url": "/api/cm/hopper_final", "title": "Gets a list of HopperFinal", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/hopper_final -v -u {name}:{password}", "type": "json" } ], "name": "GetHopperFinal", "group": "Cm_Hopper_Final", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/cm/hopper_final?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/cm/hopper_final?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/cm/hopper_final?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/cm/hopper_final?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/cm/hopper_final?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/cmHopperFinal/index.js", "groupTitle": "Cm_Hopper_Final" }, { "type": "get", "url": "/api/cm/hopper_final/{id}", "title": "Gets a single HopperFinal", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/hopper_final/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowHopperFinal", "group": "Cm_Hopper_Final", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmHopperFinal/index.js", "groupTitle": "Cm_Hopper_Final" }, { "type": "post", "url": "/api/cm/hopper_final/checkContactHopper", "title": "Check if contact is in hopper", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/hopper_final/checkContactHopper -d '{\"VoiceQueueId\": \"VoiceQueueId\", \"CampaignId\": \"CampaignId\", \"ContactId\": \"ContactId\"}' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "_checkContactHopper", "group": "Cm_Hopper_Final", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmHopperFinal/index.js", "groupTitle": "Cm_Hopper_Final" }, { "type": "get", "url": "/api/cm/hopper_final/campaign/countAttributes/{id}", "title": "Return number contacts for attributes", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/hopper_final/campaign/countAttributes/{id} -d '{\"disposition\": \"OK\"}' -v -u {name}:{password} -X GET", "type": "json" } ], "name": "countContactsIvrCampaignHopperFinal", "group": "Cm_Hopper_Final", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmHopperFinal/index.js", "groupTitle": "Cm_Hopper_Final" }, { "type": "get", "url": "/api/cm/hopper_final/voice/queue/countAttributes/{id}", "title": "Return number contacts for attributes", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/hopper_final/voice/queue/countAttributes/{id} -d '{\"disposition\": \"OK\"}' -v -u {name}:{password} -X GET", "type": "json" } ], "name": "countContactsQueueCampaignHopperFinal", "group": "Cm_Hopper_Final", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmHopperFinal/index.js", "groupTitle": "Cm_Hopper_Final" }, { "type": "post", "url": "/api/cm/hopper_final/campaign/{id}", "title": "Move contacts in hopper", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/hopper_final/campaign/moveContacts/{id} -d '{\"state\": \"state\"}' -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "moveContactsIvrCampaignHopperFinal", "group": "Cm_Hopper_Final", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmHopperFinal/index.js", "groupTitle": "Cm_Hopper_Final" }, { "type": "post", "url": "/api/cm/hopper_final/voice/queue/{id}", "title": "Move contacts in hopper", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/hopper_final/voice/queue/moveContacts/{id} -d '{\"state\": \"state\"}' -H 'Content-Type: application/json' -v -u {name}:{password}", "type": "json" } ], "name": "moveContactsQueueCampaignHopperFinal", "group": "Cm_Hopper_Final", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmHopperFinal/index.js", "groupTitle": "Cm_Hopper_Final" }, { "type": "put", "url": "/api/cm/hopper_final/{id}", "title": "Update a single hopper final", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/hopper_final/{id} -d '{\"disposition\": \"OK\"}' -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "update", "group": "Cm_Hopper_Final", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmHopperFinal/index.js", "groupTitle": "Cm_Hopper_Final" }, { "type": "post", "url": "/api/cm/hopper_history", "title": "Creates a new HopperHistory", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/hopper_history -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateHopperHistory", "group": "Cm_Hopper_History", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "Integer", "optional": true, "field": "state", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "statedesc", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "scheduledat", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "countbusyretry", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "countcongestionretry", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "countnoanswerretry", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "countglobal", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "uniqueid", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "calleridnum", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "calleridname", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "starttime", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "responsetime", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "answertime", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "droptime", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "endtime", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "ringtime", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "holdtime", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "talktime", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "followuptime", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "dropreason", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "campaign", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "campaigntype", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "membername", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "reason", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "amd", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "fax", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "callback", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "callbackuniqueid", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "callbackat", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "recallme", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "editedat", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "edited", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmHopperHistory/index.js", "groupTitle": "Cm_Hopper_History" }, { "type": "get", "url": "/api/cm/hopper_history/describe", "title": "Gets table info about HopperHistory", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/hopper_history/describe -v -u {name}:{password}", "type": "json" } ], "name": "DescribeHopperHistory", "group": "Cm_Hopper_History", "description": "

Motion will return a HTTP status code 200 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmHopperHistory/index.js", "groupTitle": "Cm_Hopper_History" }, { "type": "get", "url": "/api/cm/hopper_history", "title": "Gets a list of HopperHistory", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/hopper_history -v -u {name}:{password}", "type": "json" } ], "name": "GetHopperHistory", "group": "Cm_Hopper_History", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/cm/hopper_history?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/cm/hopper_history?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/cm/hopper_history?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/cm/hopper_history?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/cm/hopper_history?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/cmHopperHistory/index.js", "groupTitle": "Cm_Hopper_History" }, { "type": "get", "url": "/api/cm/hopper_history/{id}", "title": "Gets a single HopperHistory", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/hopper_history/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowHopperHistory", "group": "Cm_Hopper_History", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmHopperHistory/index.js", "groupTitle": "Cm_Hopper_History" }, { "type": "put", "url": "/api/cm/hopper_history/{id}", "title": "Update a single hopper history", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/hopper_history/{id} -d '{\"disposition\": \"OK\"}' -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "update", "group": "Cm_Hopper_History", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmHopperHistory/index.js", "groupTitle": "Cm_Hopper_History" }, { "type": "delete", "url": "/api/cm/hopper/{id}", "title": "Delete Hopper", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/hopper/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "destroy", "group": "Cm_Hopper", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmHopper/index.js", "groupTitle": "Cm_Hopper" }, { "type": "get", "url": "/api/cm/hopper/opencontacts", "title": "Gets Open Contacts", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/hopper/opencontacts -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getOpenContacts", "group": "Cm_Hopper", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmHopper/index.js", "groupTitle": "Cm_Hopper" }, { "type": "post", "url": "/api/cm/hopper/preview", "title": "Gets Preview Dialer Contacts", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/hopper/preview -d '{\"hopperIds\": [1,2]}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getPreview", "group": "Cm_Hopper", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmHopper/index.js", "groupTitle": "Cm_Hopper" }, { "type": "put", "url": "/api/cm/hopper/{id}", "title": "Update an existing Hopper", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/hopper/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateHopper", "group": "Cm_Hopper", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmHopper/index.js", "groupTitle": "Cm_Hopper" }, { "type": "post", "url": "/api/cm/lists", "title": "Creates a new List", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/lists -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateLists", "group": "Cm_Lists", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmList/index.js", "groupTitle": "Cm_Lists" }, { "type": "delete", "url": "/api/cm/lists/{id}", "title": "Deletes a List", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/lists/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteLists", "group": "Cm_Lists", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmList/index.js", "groupTitle": "Cm_Lists" }, { "type": "get", "url": "/api/cm/lists/{id}/users", "title": "Gets agents from list", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/lists/{id}/users -v -u {name}:{password} -X GET", "type": "json" } ], "name": "GetAgents", "group": "Cm_Lists", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmList/index.js", "groupTitle": "Cm_Lists" }, { "type": "get", "url": "/api/cm/lists", "title": "Gets a list of Lists", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/lists -v -u {name}:{password}", "type": "json" } ], "name": "GetLists", "group": "Cm_Lists", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/cm/lists?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/cm/lists?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/cm/lists?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/cm/lists?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/cm/lists?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/cmList/index.js", "groupTitle": "Cm_Lists" }, { "type": "delete", "url": "/api/cm/lists/{id}/users", "title": "Removes agents from a list", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/lists/{id}/users?ids=1&ids=2 -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "RemoveAgents", "group": "Cm_Lists", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmList/index.js", "groupTitle": "Cm_Lists" }, { "type": "get", "url": "/api/cm/lists/{id}", "title": "Gets a single List", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/lists/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowLists", "group": "Cm_Lists", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmList/index.js", "groupTitle": "Cm_Lists" }, { "type": "post", "url": "/api/cm/lists/{id}/users", "title": "Adds agents to a list", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/lists/{id}/users -d '{\"ids\": [1,2]}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addAgents", "group": "Cm_Lists", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmList/index.js", "groupTitle": "Cm_Lists" }, { "type": "post", "url": "/api/cm/lists/{id}/contacts", "title": "Creates new contacts", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/lists/{id}/contacts -d '[{\"firstName\": \"John Doe\", \"email\": \"john.doe@xcally.com\", \"...\": \"...\"}]' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addContacts", "group": "Cm_Lists", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "firstName", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "lastName", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "tags", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "street", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "postalCode", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "city", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "country", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "dateOfBirth", "description": "" }, { "group": "Body", "type": "Text", "optional": true, "field": "description", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "phone", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "mobile", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "fax", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "email", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "url", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "facebook", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "twitter", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmList/index.js", "groupTitle": "Cm_Lists" }, { "type": "post", "url": "/api/cm/lists/{id}/fields", "title": "Creates a new custom field", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/lists/{id}/fields -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addCustomField", "group": "Cm_Lists", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmList/index.js", "groupTitle": "Cm_Lists" }, { "type": "post", "url": "/api/lists/{id}/dispositions", "title": "Creates a new sub disposition", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/lists/{id}/disposition -d '{\"name\": \"SATISFIED\"}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addDisposition", "group": "Cm_Lists", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmList/index.js", "groupTitle": "Cm_Lists" }, { "type": "get", "url": "/api/cm/lists/{id}/contacts", "title": "Gets List Contacts", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/lists/{id}/contacts -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getContacts", "group": "Cm_Lists", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmList/index.js", "groupTitle": "Cm_Lists" }, { "type": "get", "url": "/api/cm/lists/{id}/fields", "title": "Gets Custom Fields", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/lists/{id}/fields -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getCustomFields", "group": "Cm_Lists", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmList/index.js", "groupTitle": "Cm_Lists" }, { "type": "get", "url": "/api/cm/lists/{id}/dispositions", "title": "Gets Dispositions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/lists/{id}/dispositions -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getDispositions", "group": "Cm_Lists", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmList/index.js", "groupTitle": "Cm_Lists" }, { "type": "get", "url": "/api/cm/lists/{id}/contacts/csv", "title": "Gets CSV List Contacts", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/lists/{id}/contacts/csv -v -u {name}:{password} -X GET", "type": "json" } ], "name": "grunt", "group": "Cm_Lists", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmList/index.js", "groupTitle": "Cm_Lists" }, { "type": "put", "url": "/api/cm/lists/{id}", "title": "Update an existing List", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/lists/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateLists", "group": "Cm_Lists", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmList/index.js", "groupTitle": "Cm_Lists" }, { "type": "post", "url": "/api/cm/contacts/csv", "title": "Create new contacts by csv", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/contacts/csv -H 'Content-Type: multipart/form-data' -F 'file=@{filename}' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "uploadCsv", "group": "Cm_contacts", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmContact/index.js", "groupTitle": "Cm_contacts" }, { "type": "delete", "url": "/api/conditions/{id}", "title": "Deletes a Condition", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/conditions/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteConditions", "group": "Conditions", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/condition/index.js", "groupTitle": "Conditions" }, { "type": "put", "url": "/api/conditions/{id}", "title": "Update an existing Condition", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/conditions/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateConditions", "group": "Conditions", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/condition/index.js", "groupTitle": "Conditions" }, { "type": "post", "url": "/api/cm/custom_field", "title": "Create a new custom field", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/custom_field -d '{\"name\": \"mycf\", \"type\": \"text\"}' -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateCustomField", "group": "Custom_Fields", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmCustomField/index.js", "groupTitle": "Custom_Fields" }, { "type": "post", "url": "/api/dashboards/items", "title": "Create dasboard item", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/dashboards/items \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "Create", "group": "Dashboard_Items", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/dashboardItem/index.js", "groupTitle": "Dashboard_Items" }, { "type": "delete", "url": "/api/dashboards/items/{id}", "title": "Deletes a Dashboard Item", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/dashboards/items/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteDashboard_Items", "group": "Dashboard_Items", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/dashboardItem/index.js", "groupTitle": "Dashboard_Items" }, { "type": "get", "url": "/api/dashboards/items/{id}", "title": "Gets a single Dashboard Item", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/dashboards/items/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowDashboard_Items", "group": "Dashboard_Items", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/dashboardItem/index.js", "groupTitle": "Dashboard_Items" }, { "type": "put", "url": "/api/dashboards/items/{id}", "title": "Update an existing item", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/dashboards/items/{id} -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "Update", "group": "Dashboard_Items", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/dashboardItem/index.js", "groupTitle": "Dashboard_Items" }, { "type": "post", "url": "/api/dashboards/clone", "title": "Clone an existing Dashboard", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/dashboards/clone -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CloneDashboards", "group": "Dashboards", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/dashboard/index.js", "groupTitle": "Dashboards" }, { "type": "post", "url": "/api/dashboards", "title": "Creates a new Dashboard", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/dashboards -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateDashboards", "group": "Dashboards", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/dashboard/index.js", "groupTitle": "Dashboards" }, { "type": "delete", "url": "/api/dashboards/{id}", "title": "Deletes a Dashboard", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/dashboards/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteDashboards", "group": "Dashboards", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/dashboard/index.js", "groupTitle": "Dashboards" }, { "type": "get", "url": "/api/dashboards", "title": "Gets a list of Dashboards", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/dashboards -v -u {name}:{password}", "type": "json" } ], "name": "GetDashboards", "group": "Dashboards", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/dashboards?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/dashboards?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/dashboards?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/dashboards?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/dashboards?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/dashboard/index.js", "groupTitle": "Dashboards" }, { "type": "get", "url": "/api/dashboards/{id}", "title": "Gets a single Dashboard", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/dashboards/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowDashboards", "group": "Dashboards", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/dashboard/index.js", "groupTitle": "Dashboards" }, { "type": "post", "url": "/api/dashboards/{id}/items", "title": "Creates new item", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/dashboards/{id}/items -d '{\"type\": \"counter\", \"...\": \"...\"}]' -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addItem", "group": "Dashboards", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/dashboard/index.js", "groupTitle": "Dashboards" }, { "type": "put", "url": "/api/dashboards/{id}", "title": "Update an existing Dashboard", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/dashboards/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateDashboards", "group": "Dashboards", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/dashboard/index.js", "groupTitle": "Dashboards" }, { "type": "get", "url": "/api/dashboards/{id}/items", "title": "Gets items", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/dashboards/{id}/items -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getItems", "group": "Dashboars", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/dashboard/index.js", "groupTitle": "Dashboars" }, { "type": "post", "url": "/api/integrations/desk/accounts", "title": "Creates a new Desk Account", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/desk/accounts -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateDesk_Accounts", "group": "Desk_Accounts", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": true, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "username", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "remoteUri", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"basic\"" ], "optional": true, "field": "authType", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "password", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "consumerKey", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "consumerSecret", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "token", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "tokenSecret", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "serverUrl", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"integrationTab\"", "\"newTab\"" ], "optional": true, "field": "type", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intDeskAccount/index.js", "groupTitle": "Desk_Accounts" }, { "type": "delete", "url": "/api/integrations/desk/accounts/{id}", "title": "Deletes a Desk Account", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/desk/accounts/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteDesk_Accounts", "group": "Desk_Accounts", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intDeskAccount/index.js", "groupTitle": "Desk_Accounts" }, { "type": "get", "url": "/api/integrations/desk/accounts", "title": "Gets a list of Desk Accounts", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/desk/accounts -v -u {name}:{password}", "type": "json" } ], "name": "GetDesk_Accounts", "group": "Desk_Accounts", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/integrations/desk/accounts?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/integrations/desk/accounts?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/integrations/desk/accounts?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/integrations/desk/accounts?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/integrations/desk/accounts?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/intDeskAccount/index.js", "groupTitle": "Desk_Accounts" }, { "type": "get", "url": "/api/integrations/desk/accounts/{id}", "title": "Gets a single Desk Account", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/desk/accounts/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowDesk_Accounts", "group": "Desk_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intDeskAccount/index.js", "groupTitle": "Desk_Accounts" }, { "type": "post", "url": "/api/integrations/desk/accounts/{id}/configurations", "title": "Creates new configuration", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/desk/accounts/{id}/configurations -d '{\"name\": \"conf1\"}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addConfiguration", "group": "Desk_Accounts", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intDeskAccount/index.js", "groupTitle": "Desk_Accounts" }, { "type": "get", "url": "/api/integrations/desk/accounts/{id}/configurations", "title": "Gets account configurations", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/desk/accounts/{id}/configurations -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getConfigurations", "group": "Desk_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intDeskAccount/index.js", "groupTitle": "Desk_Accounts" }, { "type": "get", "url": "/api/integrations/desk/accounts/{id}/fields", "title": "Gets account fields", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/desk/accounts/{id}/fields -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getFields", "group": "Desk_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intDeskAccount/index.js", "groupTitle": "Desk_Accounts" }, { "type": "put", "url": "/api/integrations/desk/accounts/{id}", "title": "Update an existing Desk Account", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/desk/accounts/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateDesk_Accounts", "group": "Desk_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intDeskAccount/index.js", "groupTitle": "Desk_Accounts" }, { "type": "post", "url": "/api/integrations/desk/configurations", "title": "Creates a new Desk Configuration", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/desk/configurations -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateDesk_Configurations", "group": "Desk_Configurations", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": true, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intDeskConfiguration/index.js", "groupTitle": "Desk_Configurations" }, { "type": "delete", "url": "/api/integrations/desk/configurations/{id}", "title": "Deletes a Desk Configuration", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/desk/configurations/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteDesk_Configurations", "group": "Desk_Configurations", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intDeskConfiguration/index.js", "groupTitle": "Desk_Configurations" }, { "type": "get", "url": "/api/integrations/desk/configurations", "title": "Gets a list of Desk Configurations", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/desk/configurations -v -u {name}:{password}", "type": "json" } ], "name": "GetDesk_Configurations", "group": "Desk_Configurations", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/integrations/desk/configurations?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/integrations/desk/configurations?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/integrations/desk/configurations?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/integrations/desk/configurations?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/integrations/desk/configurations?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/intDeskConfiguration/index.js", "groupTitle": "Desk_Configurations" }, { "type": "get", "url": "/api/integrations/desk/configurations/{id}", "title": "Gets a single Desk Configuration", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/desk/configurations/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowDesk_Configurations", "group": "Desk_Configurations", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intDeskConfiguration/index.js", "groupTitle": "Desk_Configurations" }, { "type": "get", "url": "/api/integrations/desk/configurations/{id}/descriptions", "title": "Gets configurations descriptions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/desk/configurations/{id}/descriptions -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getDescriptions", "group": "Desk_Configurations", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intDeskConfiguration/index.js", "groupTitle": "Desk_Configurations" }, { "type": "get", "url": "/api/integrations/desk/configurations/{id}/fields", "title": "Gets configurations fields", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/desk/configurations/{id}/fields -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getFields", "group": "Desk_Configurations", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intDeskConfiguration/index.js", "groupTitle": "Desk_Configurations" }, { "type": "get", "url": "/api/integrations/desk/configurations/{id}/subjects", "title": "Gets configurations subjects", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/desk/configurations/{id}/subjects -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getSubjects", "group": "Desk_Configurations", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intDeskConfiguration/index.js", "groupTitle": "Desk_Configurations" }, { "type": "get", "url": "/api/integrations/desk/configurations/{id}/tags", "title": "Gets configurations tags", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/desk/configurations/{id}/tags -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getTags", "group": "Desk_Configurations", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intDeskConfiguration/index.js", "groupTitle": "Desk_Configurations" }, { "type": "post", "url": "/api/integrations/desk/configurations/{id}/tags", "title": "Sets new tags", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/desk/configurations/{id}/tags -d '{\"ids\": [1,12]}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "setTags", "group": "Desk_Configurations", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intDeskConfiguration/index.js", "groupTitle": "Desk_Configurations" }, { "type": "put", "url": "/api/integrations/desk/configurations/{id}", "title": "Update an existing Desk Configuration", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/desk/configurations/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateDesk_Configurations", "group": "Desk_Configurations", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intDeskConfiguration/index.js", "groupTitle": "Desk_Configurations" }, { "type": "post", "url": "/api/integrations/desk/fields", "title": "Creates a new Desk Field", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/desk/fields -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateDesk_Fields", "group": "Desk_Fields", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "allowedValues": [ "\"string\"", "\"variable\"", "\"customVariable\"", "\"keyValue\"" ], "optional": true, "field": "type", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "content", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "key", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"string\"", "\"variable\"", "\"customVariable\"" ], "optional": true, "field": "keyType", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "keyContent", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "idField", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "nameField", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "customField", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "variableName", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intDeskField/index.js", "groupTitle": "Desk_Fields" }, { "type": "delete", "url": "/api/integrations/desk/fields/{id}", "title": "Deletes a Desk Field", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/desk/fields/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteDesk_Fields", "group": "Desk_Fields", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intDeskField/index.js", "groupTitle": "Desk_Fields" }, { "type": "get", "url": "/api/integrations/desk/fields", "title": "Gets a list of Desk Fields", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/desk/fields -v -u {name}:{password}", "type": "json" } ], "name": "GetDesk_Fields", "group": "Desk_Fields", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/integrations/desk/fields?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/integrations/desk/fields?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/integrations/desk/fields?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/integrations/desk/fields?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/integrations/desk/fields?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/intDeskField/index.js", "groupTitle": "Desk_Fields" }, { "type": "get", "url": "/api/integrations/desk/fields/{id}", "title": "Gets a single Desk Field", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/desk/fields/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowDesk_Fields", "group": "Desk_Fields", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intDeskField/index.js", "groupTitle": "Desk_Fields" }, { "type": "put", "url": "/api/integrations/desk/fields/{id}", "title": "Update an existing Desk Field", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/desk/fields/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateDesk_Fields", "group": "Desk_Fields", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intDeskField/index.js", "groupTitle": "Desk_Fields" }, { "type": "post", "url": "/api/fax/accounts", "title": "Creates a new Account", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/accounts -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateAccounts", "group": "Fax_Accounts", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "ecm", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "headerinfo", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "localstationid", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"2400\"", "\"4800\"", "\"7200\"", "\"9600\"", "\"12000\"", "\"14400\"" ], "optional": true, "field": "minrate", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"2400\"", "\"4800\"", "\"7200\"", "\"9600\"", "\"12000\"", "\"14400\"" ], "optional": true, "field": "maxrate", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "modem", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "gateway", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "faxdetect", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "t38timeout", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"SIP\"", "\"IAX\"", "\"DADHI\"", "\"KHOMP\"" ], "optional": true, "field": "tech", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "key", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxAccount/index.js", "groupTitle": "Fax_Accounts" }, { "type": "delete", "url": "/api/fax/accounts/{id}", "title": "Deletes a Account", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/accounts/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteAccounts", "group": "Fax_Accounts", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxAccount/index.js", "groupTitle": "Fax_Accounts" }, { "type": "get", "url": "/api/fax/accounts/describe", "title": "Gets table info about Accounts", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/accounts/describe -v -u {name}:{password}", "type": "json" } ], "name": "DescribeAccounts", "group": "Fax_Accounts", "description": "

Motion will return a HTTP status code 200 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxAccount/index.js", "groupTitle": "Fax_Accounts" }, { "type": "get", "url": "/api/fax/accounts", "title": "Gets a list of Accounts", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/accounts -v -u {name}:{password}", "type": "json" } ], "name": "GetAccounts", "group": "Fax_Accounts", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/fax/accounts?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/fax/accounts?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/fax/accounts?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/fax/accounts?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/fax/accounts?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/faxAccount/index.js", "groupTitle": "Fax_Accounts" }, { "type": "delete", "url": "/api/fax/accounts/{id}/canned_answers", "title": "Removes canned answers from account", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/accounts/{id}/canned_answers?ids=1&ids=2 -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "RemoveAnswers", "group": "Fax_Accounts", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxAccount/index.js", "groupTitle": "Fax_Accounts" }, { "type": "get", "url": "/api/fax/accounts/{id}", "title": "Gets a single Account", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/accounts/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowAccounts", "group": "Fax_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxAccount/index.js", "groupTitle": "Fax_Accounts" }, { "type": "post", "url": "/api/fax/accounts/{id}/canned_answers", "title": "Creates new canned answer", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/accounts/{id}/canned_answers -d '{\"name\": \"vip\"}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addAnswer", "group": "Fax_Accounts", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "key", "description": "" }, { "group": "Body", "type": "Text", "optional": false, "field": "value", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxAccount/index.js", "groupTitle": "Fax_Accounts" }, { "type": "post", "url": "/api/fax/accounts/{id}/applications", "title": "Creates new applications", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/accounts/{id}/applications -d '[{\"app\": \"queue\", \"...\": \"...\"}]' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addApplications", "group": "Fax_Accounts", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "Integer", "optional": false, "field": "priority", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "app", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "appdata", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "interval", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxAccount/index.js", "groupTitle": "Fax_Accounts" }, { "type": "post", "url": "/api/fax/accounts/addaccountapplications", "title": "Creates new account and applications", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/accounts/addaccountapplications -d '[{\"name\": \"name\", \"...\": \"...\"}]' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addApplications", "group": "Fax_Accounts", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "Integer", "optional": false, "field": "priority", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "app", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "appdata", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "interval", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxAccount/index.js", "groupTitle": "Fax_Accounts" }, { "type": "post", "url": "/api/fax/accounts/{id}/dispositions", "title": "Creates new disposition", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/accounts/{id}/dispositions -d '{\"name\": \"Satisfied\"}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addDisposition", "group": "Fax_Accounts", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "name", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxAccount/index.js", "groupTitle": "Fax_Accounts" }, { "type": "post", "url": "/api/fax/accounts/{id}/dispositions", "title": "Creates many dispositions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/accounts/{id}/dispositions -d '[{\"name\": \"Satisfied\"}]' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addDispositions", "group": "Fax_Accounts", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "name", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxAccount/index.js", "groupTitle": "Fax_Accounts" }, { "type": "post", "url": "/api/fax/accounts/{id}/interactions", "title": "Creates new interactions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/accounts/{id}/interactions -d '[{\"host\": \"host\", \"username\": \"username\", \"password\": \"password\", \"...\": \"...\"}]' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addInteraction", "group": "Fax_Accounts", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "Boolean", "optional": true, "field": "closed", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "closedAt", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "disposition", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "note", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "read1stAt", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "fax", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"in\"", "\"out\"" ], "optional": false, "field": "firstMsgDirection", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "lastMsgAt", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"in\"", "\"out\"" ], "optional": false, "field": "lastMsgDirection", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxAccount/index.js", "groupTitle": "Fax_Accounts" }, { "type": "get", "url": "/api/fax/accounts/{id}/canned_answers", "title": "Gets account canned answers", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/accounts/{id}/canned_answers -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getAnswers", "group": "Fax_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxAccount/index.js", "groupTitle": "Fax_Accounts" }, { "type": "get", "url": "/api/fax/accounts/{id}/applications", "title": "Gets account pplications", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/accounts/{id}/applications -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getApplications", "group": "Fax_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxAccount/index.js", "groupTitle": "Fax_Accounts" }, { "type": "get", "url": "/api/fax/accounts/{id}/dispositions", "title": "Gets account dispositions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/accounts/{id}/dispositions -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getDispositions", "group": "Fax_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxAccount/index.js", "groupTitle": "Fax_Accounts" }, { "type": "get", "url": "/api/fax/accounts/{id}/interactions", "title": "Gets account interactions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/accounts/{id}/interactions -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getInteraction", "group": "Fax_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxAccount/index.js", "groupTitle": "Fax_Accounts" }, { "type": "get", "url": "/api/fax/accounts/{id}/messages", "title": "Gets account messages", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/accounts/{id}/messages -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getMessages", "group": "Fax_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxAccount/index.js", "groupTitle": "Fax_Accounts" }, { "type": "post", "url": "/api/fax/accounts/{id}/send", "title": "Send new fax", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/accounts/{id}/send -d '{from: '\"John Doe\" <123456>'}' -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "sendFax", "group": "Fax_Accounts", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxAccount/index.js", "groupTitle": "Fax_Accounts" }, { "type": "put", "url": "/api/fax/accounts/{id}", "title": "Update an existing Account", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/accounts/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateAccounts", "group": "Fax_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxAccount/index.js", "groupTitle": "Fax_Accounts" }, { "type": "post", "url": "/api/fax/accounts/updateaccountapplications", "title": "Update account and applications", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/accounts/updateaccountapplications -d '[{\"name\": \"name\", \"...\": \"...\"}]' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "updateApplications", "group": "Fax_Accounts", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "Integer", "optional": false, "field": "priority", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "app", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "appdata", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "interval", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxAccount/index.js", "groupTitle": "Fax_Accounts" }, { "type": "post", "url": "/api/fax/applications", "title": "Creates a new Application", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/applications -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateApplications", "group": "Fax_Applications", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "Integer", "optional": false, "field": "priority", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "app", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "appdata", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "interval", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxApplication/index.js", "groupTitle": "Fax_Applications" }, { "type": "delete", "url": "/api/fax/applications/{id}", "title": "Deletes a Application", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/applications/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteApplications", "group": "Fax_Applications", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxApplication/index.js", "groupTitle": "Fax_Applications" }, { "type": "get", "url": "/api/fax/applications", "title": "Gets a list of Applications", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/applications -v -u {name}:{password}", "type": "json" } ], "name": "GetApplications", "group": "Fax_Applications", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/fax/applications?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/fax/applications?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/fax/applications?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/fax/applications?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/fax/applications?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/faxApplication/index.js", "groupTitle": "Fax_Applications" }, { "type": "get", "url": "/api/fax/applications/{id}", "title": "Gets a single Application", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/applications/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowApplications", "group": "Fax_Applications", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxApplication/index.js", "groupTitle": "Fax_Applications" }, { "type": "put", "url": "/api/fax/applications/{id}", "title": "Update an existing Application", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/applications/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateApplications", "group": "Fax_Applications", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxApplication/index.js", "groupTitle": "Fax_Applications" }, { "type": "post", "url": "/api/fax/dispositions", "title": "Creates a new Disposition", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/dispositions -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateDispositions", "group": "Fax_Dispositions", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "name", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxDisposition/index.js", "groupTitle": "Fax_Dispositions" }, { "type": "delete", "url": "/api/fax/dispositions/{id}", "title": "Deletes a Disposition", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/dispositions/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteDispositions", "group": "Fax_Dispositions", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxDisposition/index.js", "groupTitle": "Fax_Dispositions" }, { "type": "get", "url": "/api/fax/dispositions/{id}", "title": "Gets a single Disposition", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/dispositions/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowDispositions", "group": "Fax_Dispositions", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxDisposition/index.js", "groupTitle": "Fax_Dispositions" }, { "type": "put", "url": "/api/fax/dispositions/{id}", "title": "Update an existing Disposition", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/dispositions/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateDispositions", "group": "Fax_Dispositions", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxDisposition/index.js", "groupTitle": "Fax_Dispositions" }, { "type": "post", "url": "/api/fax/interactions/{id}/tags", "title": "Add tags to the interaction", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/interaction/{id}/tags -d '{\"ids\": [1,2]}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "AddTags", "group": "Fax_Interactions", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxInteraction/index.js", "groupTitle": "Fax_Interactions" }, { "type": "post", "url": "/api/fax/interactions", "title": "Creates a new Interaction", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/interactions -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateInteractions", "group": "Fax_Interactions", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "Boolean", "optional": true, "field": "closed", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "closedAt", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "disposition", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "note", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "read1stAt", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "fax", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"in\"", "\"out\"" ], "optional": false, "field": "firstMsgDirection", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "lastMsgAt", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"in\"", "\"out\"" ], "optional": false, "field": "lastMsgDirection", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxInteraction/index.js", "groupTitle": "Fax_Interactions" }, { "type": "delete", "url": "/api/fax/interactions/{id}", "title": "Deletes a Interaction", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/interactions/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteInteractions", "group": "Fax_Interactions", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxInteraction/index.js", "groupTitle": "Fax_Interactions" }, { "type": "get", "url": "/api/fax/interactions/describe", "title": "Gets table info about Interactions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/interactions/describe -v -u {name}:{password}", "type": "json" } ], "name": "DescribeInteractions", "group": "Fax_Interactions", "description": "

Motion will return a HTTP status code 200 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxInteraction/index.js", "groupTitle": "Fax_Interactions" }, { "type": "get", "url": "/api/fax/interactions", "title": "Gets a list of Interactions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/interactions -v -u {name}:{password}", "type": "json" } ], "name": "GetInteractions", "group": "Fax_Interactions", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/fax/interactions?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/fax/interactions?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/fax/interactions?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/fax/interactions?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/fax/interactions?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/faxInteraction/index.js", "groupTitle": "Fax_Interactions" }, { "type": "delete", "url": "/api/fax/interactions/{id}/tags", "title": "Removes tags from interaction", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/interactions/{id}/tags?ids=1&ids=2 -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "RemoveTags", "group": "Fax_Interactions", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxInteraction/index.js", "groupTitle": "Fax_Interactions" }, { "type": "get", "url": "/api/fax/interactions/{id}", "title": "Gets a single Interaction", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/interactions/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowInteractions", "group": "Fax_Interactions", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxInteraction/index.js", "groupTitle": "Fax_Interactions" }, { "type": "post", "url": "/api/fax/interactions/{id}/messages", "title": "Creates new messages", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/interactions/{id}/messages -d '[{\"to\": \"+3901119886500\", \"...\": \"...\"}]' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addMessage", "group": "Fax_Interactions", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "Text", "optional": false, "field": "body", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "read", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"in\"", "\"out\"" ], "optional": false, "field": "direction", "description": "" }, { "group": "Body", "type": "Text", "optional": true, "field": "failMessage", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "readAt", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxInteraction/index.js", "groupTitle": "Fax_Interactions" }, { "type": "get", "url": "/api/fax/interactions/{id}/messages", "title": "Gets interaction messages", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/interactions/{id}/messages -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getMessages", "group": "Fax_Interactions", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxInteraction/index.js", "groupTitle": "Fax_Interactions" }, { "type": "put", "url": "/api/fax/interactions/{id}", "title": "Update an existing Interaction", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/interactions/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateInteractions", "group": "Fax_Interactions", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxInteraction/index.js", "groupTitle": "Fax_Interactions" }, { "type": "delete", "url": "/api/fax/messages/{id}", "title": "Deletes a Message", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/messages/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteMessages", "group": "Fax_Messages", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxMessage/index.js", "groupTitle": "Fax_Messages" }, { "type": "get", "url": "/api/fax/messages/describe", "title": "Gets table info about Messages", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/messages/describe -v -u {name}:{password}", "type": "json" } ], "name": "DescribeMessages", "group": "Fax_Messages", "description": "

Motion will return a HTTP status code 200 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxMessage/index.js", "groupTitle": "Fax_Messages" }, { "type": "get", "url": "/api/fax/messages", "title": "Gets a list of Messages", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/messages -v -u {name}:{password}", "type": "json" } ], "name": "GetMessages", "group": "Fax_Messages", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/fax/messages?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/fax/messages?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/fax/messages?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/fax/messages?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/fax/messages?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/faxMessage/index.js", "groupTitle": "Fax_Messages" }, { "type": "get", "url": "/api/fax/messages/{id}", "title": "Gets a single Message", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/messages/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowMessages", "group": "Fax_Messages", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxMessage/index.js", "groupTitle": "Fax_Messages" }, { "type": "put", "url": "/api/fax/messages/{id}/accept", "title": "Accepts message", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/messages/{id}/accept \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "acceptMessage", "group": "Fax_Messages", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxMessage/index.js", "groupTitle": "Fax_Messages" }, { "type": "post", "url": "/api/fax/messages", "title": "Create message and send Fax", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/messages/{id}/reject \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "rejectMessage", "group": "Fax_Messages", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxMessage/index.js", "groupTitle": "Fax_Messages" }, { "type": "put", "url": "/api/fax/messages/{id}/reject", "title": "Rejects message", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/messages/{id}/reject \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "rejectMessage", "group": "Fax_Messages", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxMessage/index.js", "groupTitle": "Fax_Messages" }, { "type": "put", "url": "/api/fax/messages/{id}", "title": "Update an existing Message", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/messages/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateMessages", "group": "Fax_Messages", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxMessage/index.js", "groupTitle": "Fax_Messages" }, { "type": "post", "url": "/api/fax/reports/queue", "title": "Creates a new Fax Queue Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/reports/queue -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateFax_Queue_Reports", "group": "Fax_Queue_Reports", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "uniqueid", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "from", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "joinAt", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "leaveAt", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "acceptAt", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "exitAt", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "reason", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxQueueReport/index.js", "groupTitle": "Fax_Queue_Reports" }, { "type": "delete", "url": "/api/fax/reports/queue/{id}", "title": "Deletes a Fax Queue Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/reports/queue/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteFax_Queue_Reports", "group": "Fax_Queue_Reports", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxQueueReport/index.js", "groupTitle": "Fax_Queue_Reports" }, { "type": "get", "url": "/api/fax/reports/queue/describe", "title": "Gets table info about Fax Queue Reports", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/reports/queue/describe -v -u {name}:{password}", "type": "json" } ], "name": "DescribeFax_Queue_Reports", "group": "Fax_Queue_Reports", "description": "

Motion will return a HTTP status code 200 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxQueueReport/index.js", "groupTitle": "Fax_Queue_Reports" }, { "type": "get", "url": "/api/fax/reports/queue", "title": "Gets a list of Fax Queue Reports", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/reports/queue -v -u {name}:{password}", "type": "json" } ], "name": "GetFax_Queue_Reports", "group": "Fax_Queue_Reports", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/fax/reports/queue?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/fax/reports/queue?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/fax/reports/queue?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/fax/reports/queue?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/fax/reports/queue?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/faxQueueReport/index.js", "groupTitle": "Fax_Queue_Reports" }, { "type": "get", "url": "/api/fax/reports/queue/{id}", "title": "Gets a single Fax Queue Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/reports/queue/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowFax_Queue_Reports", "group": "Fax_Queue_Reports", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxQueueReport/index.js", "groupTitle": "Fax_Queue_Reports" }, { "type": "put", "url": "/api/fax/reports/queue/{id}", "title": "Update an existing Fax Queue Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/reports/queue/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateFax_Queue_Reports", "group": "Fax_Queue_Reports", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxQueueReport/index.js", "groupTitle": "Fax_Queue_Reports" }, { "type": "post", "url": "/api/fax/queues/{id}/users", "title": "Add agents to a queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/queues/{id}/users -d '{\"ids\": [1,2], \"penalty\": 2}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "AddAgents", "group": "Fax_Queues", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxQueue/index.js", "groupTitle": "Fax_Queues" }, { "type": "post", "url": "/api/fax/queues/{id}/teams", "title": "Add teams to a queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/queues/{id}/teams -d '{\"ids\": [1,2]}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "AddTeams", "group": "Fax_Queues", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxQueue/index.js", "groupTitle": "Fax_Queues" }, { "type": "post", "url": "/api/fax/queues", "title": "Creates a new Queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/queues -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateQueues", "group": "Fax_Queues", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" }, { "group": "Body", "type": "Integer", "optional": false, "field": "timeout", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"rrmemory\"", "\"beepall\"", "\"roundrobin\"" ], "optional": false, "field": "strategy", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "lastAgent", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxQueue/index.js", "groupTitle": "Fax_Queues" }, { "type": "delete", "url": "/api/fax/queues/{id}", "title": "Deletes a Queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/queues/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteQueues", "group": "Fax_Queues", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxQueue/index.js", "groupTitle": "Fax_Queues" }, { "type": "get", "url": "/api/fax/queues/describe", "title": "Gets table info about Queues", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/queues/describe -v -u {name}:{password}", "type": "json" } ], "name": "DescribeQueues", "group": "Fax_Queues", "description": "

Motion will return a HTTP status code 200 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxQueue/index.js", "groupTitle": "Fax_Queues" }, { "type": "get", "url": "/api/fax/queues/{id}/users", "title": "Gets queue agents", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/queues/{id}/users -v -u {name}:{password} -X POST", "type": "json" } ], "name": "GetAgents", "group": "Fax_Queues", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxQueue/index.js", "groupTitle": "Fax_Queues" }, { "type": "get", "url": "/api/fax/queues/{id}/members", "title": "GetMembers", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/queues/{id}/members -v -u {name}:{password}", "type": "json" } ], "name": "GetMembers", "group": "Fax_Queues", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxQueue/index.js", "groupTitle": "Fax_Queues" }, { "type": "get", "url": "/api/fax/queues", "title": "Gets a list of Queues", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/queues -v -u {name}:{password}", "type": "json" } ], "name": "GetQueues", "group": "Fax_Queues", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/fax/queues?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/fax/queues?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/fax/queues?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/fax/queues?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/fax/queues?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/faxQueue/index.js", "groupTitle": "Fax_Queues" }, { "type": "get", "url": "/api/fax/queues/{id}/teams", "title": "Gets queues list", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/queues/{id}/teams -v -u {name}:{password}", "type": "json" } ], "name": "GetTeams", "group": "Fax_Queues", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxQueue/index.js", "groupTitle": "Fax_Queues" }, { "type": "delete", "url": "/api/fax/queues/{id}/users", "title": "Removes agents from a queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/queues/{id}/users?ids=1&ids=2 -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "RemoveAgents", "group": "Fax_Queues", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxQueue/index.js", "groupTitle": "Fax_Queues" }, { "type": "get", "url": "/api/fax/queues/{id}", "title": "Gets a single Queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/queues/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowQueues", "group": "Fax_Queues", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxQueue/index.js", "groupTitle": "Fax_Queues" }, { "type": "put", "url": "/api/fax/queues/{id}", "title": "Update an existing Queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/queues/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateQueues", "group": "Fax_Queues", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxQueue/index.js", "groupTitle": "Fax_Queues" }, { "type": "post", "url": "/api/integrations/freshdesk/accounts", "title": "Creates a new Freshdesk Account", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/freshdesk/accounts -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateFreshdesk_Accounts", "group": "Freshdesk_Accounts", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": true, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "username", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "apiKey", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "remoteUri", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "serverUrl", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intFreshdeskAccount/index.js", "groupTitle": "Freshdesk_Accounts" }, { "type": "delete", "url": "/api/integrations/freshdesk/accounts/{id}", "title": "Deletes a Freshdesk Account", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/freshdesk/accounts/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteFreshdesk_Accounts", "group": "Freshdesk_Accounts", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intFreshdeskAccount/index.js", "groupTitle": "Freshdesk_Accounts" }, { "type": "get", "url": "/api/integrations/freshdesk/accounts", "title": "Gets a list of Freshdesk Accounts", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/freshdesk/accounts -v -u {name}:{password}", "type": "json" } ], "name": "GetFreshdesk_Accounts", "group": "Freshdesk_Accounts", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/integrations/freshdesk/accounts?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/integrations/freshdesk/accounts?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/integrations/freshdesk/accounts?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/integrations/freshdesk/accounts?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/integrations/freshdesk/accounts?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/intFreshdeskAccount/index.js", "groupTitle": "Freshdesk_Accounts" }, { "type": "get", "url": "/api/integrations/freshdesk/accounts/{id}", "title": "Gets a single Freshdesk Account", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/freshdesk/accounts/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowFreshdesk_Accounts", "group": "Freshdesk_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intFreshdeskAccount/index.js", "groupTitle": "Freshdesk_Accounts" }, { "type": "post", "url": "/api/integrations/freshdesk/accounts/{id}/configurations", "title": "Creates new configuration", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/freshdesk/accounts/{id}/configurations -d '{\"name\": \"conf1\"}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addConfiguration", "group": "Freshdesk_Accounts", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intFreshdeskAccount/index.js", "groupTitle": "Freshdesk_Accounts" }, { "type": "get", "url": "/api/integrations/freshdesk/accounts/{id}/configurations", "title": "Gets account configurations", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/freshdesk/accounts/{id}/configurations -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getConfigurations", "group": "Freshdesk_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intFreshdeskAccount/index.js", "groupTitle": "Freshdesk_Accounts" }, { "type": "get", "url": "/api/integrations/freshdesk/accounts/{id}/fields", "title": "Gets account fields", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/freshdesk/accounts/{id}/fields -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getFields", "group": "Freshdesk_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intFreshdeskAccount/index.js", "groupTitle": "Freshdesk_Accounts" }, { "type": "put", "url": "/api/integrations/freshdesk/accounts/{id}", "title": "Update an existing Freshdesk Account", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/freshdesk/accounts/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateFreshdesk_Accounts", "group": "Freshdesk_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intFreshdeskAccount/index.js", "groupTitle": "Freshdesk_Accounts" }, { "type": "post", "url": "/api/integrations/freshdesk/configurations", "title": "Creates a new Freshdesk Configuration", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/freshdesk/configurations -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateFreshdesk_Configurations", "group": "Freshdesk_Configurations", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": true, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intFreshdeskConfiguration/index.js", "groupTitle": "Freshdesk_Configurations" }, { "type": "delete", "url": "/api/integrations/freshdesk/configurations/{id}", "title": "Deletes a Freshdesk Configuration", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/freshdesk/configurations/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteFreshdesk_Configurations", "group": "Freshdesk_Configurations", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intFreshdeskConfiguration/index.js", "groupTitle": "Freshdesk_Configurations" }, { "type": "get", "url": "/api/integrations/freshdesk/configurations", "title": "Gets a list of Freshdesk Configurations", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/freshdesk/configurations -v -u {name}:{password}", "type": "json" } ], "name": "GetFreshdesk_Configurations", "group": "Freshdesk_Configurations", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/integrations/freshdesk/configurations?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/integrations/freshdesk/configurations?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/integrations/freshdesk/configurations?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/integrations/freshdesk/configurations?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/integrations/freshdesk/configurations?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/intFreshdeskConfiguration/index.js", "groupTitle": "Freshdesk_Configurations" }, { "type": "get", "url": "/api/integrations/freshdesk/configurations/{id}", "title": "Gets a single Freshdesk Configuration", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/freshdesk/configurations/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowFreshdesk_Configurations", "group": "Freshdesk_Configurations", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intFreshdeskConfiguration/index.js", "groupTitle": "Freshdesk_Configurations" }, { "type": "get", "url": "/api/integrations/freshdesk/configurations/{id}/descriptions", "title": "Gets configurations descriptions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/freshdesk/configurations/{id}/descriptions -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getDescriptions", "group": "Freshdesk_Configurations", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intFreshdeskConfiguration/index.js", "groupTitle": "Freshdesk_Configurations" }, { "type": "get", "url": "/api/integrations/freshdesk/configurations/{id}/fields", "title": "Gets configurations fields", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/freshdesk/configurations/{id}/fields -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getFields", "group": "Freshdesk_Configurations", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intFreshdeskConfiguration/index.js", "groupTitle": "Freshdesk_Configurations" }, { "type": "get", "url": "/api/integrations/freshdesk/configurations/{id}/subjects", "title": "Gets configurations subjects", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/freshdesk/configurations/{id}/subjects -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getSubjects", "group": "Freshdesk_Configurations", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intFreshdeskConfiguration/index.js", "groupTitle": "Freshdesk_Configurations" }, { "type": "get", "url": "/api/integrations/freshdesk/configurations/{id}/tags", "title": "Gets configurations tags", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/freshdesk/configurations/{id}/tags -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getTags", "group": "Freshdesk_Configurations", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intFreshdeskConfiguration/index.js", "groupTitle": "Freshdesk_Configurations" }, { "type": "post", "url": "/api/integrations/freshdesk/configurations/{id}/tags", "title": "Sets new tags", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/freshdesk/configurations/{id}/tags -d '{\"ids\": [1,12]}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "setTags", "group": "Freshdesk_Configurations", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intFreshdeskConfiguration/index.js", "groupTitle": "Freshdesk_Configurations" }, { "type": "put", "url": "/api/integrations/freshdesk/configurations/{id}", "title": "Update an existing Freshdesk Configuration", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/freshdesk/configurations/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateFreshdesk_Configurations", "group": "Freshdesk_Configurations", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intFreshdeskConfiguration/index.js", "groupTitle": "Freshdesk_Configurations" }, { "type": "post", "url": "/api/integrations/freshdesk/fields", "title": "Creates a new Freshdesk Field", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/freshdesk/fields -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateFreshdesk_Fields", "group": "Freshdesk_Fields", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "allowedValues": [ "\"string\"", "\"variable\"", "\"customVariable\"", "\"keyValue\"" ], "optional": true, "field": "type", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "content", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "key", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"string\"", "\"variable\"", "\"customVariable\"" ], "optional": true, "field": "keyType", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "keyContent", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "idField", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "nameField", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "customField", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "variableName", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intFreshdeskField/index.js", "groupTitle": "Freshdesk_Fields" }, { "type": "delete", "url": "/api/integrations/freshdesk/fields/{id}", "title": "Deletes a Freshdesk Field", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/freshdesk/fields/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteFreshdesk_Fields", "group": "Freshdesk_Fields", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intFreshdeskField/index.js", "groupTitle": "Freshdesk_Fields" }, { "type": "get", "url": "/api/integrations/freshdesk/fields", "title": "Gets a list of Freshdesk Fields", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/freshdesk/fields -v -u {name}:{password}", "type": "json" } ], "name": "GetFreshdesk_Fields", "group": "Freshdesk_Fields", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/integrations/freshdesk/fields?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/integrations/freshdesk/fields?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/integrations/freshdesk/fields?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/integrations/freshdesk/fields?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/integrations/freshdesk/fields?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/intFreshdeskField/index.js", "groupTitle": "Freshdesk_Fields" }, { "type": "get", "url": "/api/integrations/freshdesk/fields/{id}", "title": "Gets a single Freshdesk Field", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/freshdesk/fields/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowFreshdesk_Fields", "group": "Freshdesk_Fields", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intFreshdeskField/index.js", "groupTitle": "Freshdesk_Fields" }, { "type": "put", "url": "/api/integrations/freshdesk/fields/{id}", "title": "Update an existing Freshdesk Field", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/freshdesk/fields/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateFreshdesk_Fields", "group": "Freshdesk_Fields", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intFreshdeskField/index.js", "groupTitle": "Freshdesk_Fields" }, { "type": "post", "url": "/api/campaigns/{id}/blacklists", "title": "Add blacklists to an IVR campaign", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/campaigns/{id}/blacklists -d '{\"ids\": [1,2]}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "AddBlackLists", "group": "IVR_Campaigns", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/campaign/index.js", "groupTitle": "IVR_Campaigns" }, { "type": "post", "url": "/api/campaigns/{id}/lists", "title": "Add lists to an IVR campaign", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/campaigns/{id}/lists -d '{\"ids\": [1,2]}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "AddLists", "group": "IVR_Campaigns", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/campaign/index.js", "groupTitle": "IVR_Campaigns" }, { "type": "post", "url": "/api/campaigns", "title": "Creates a new IVR Campaign", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/campaigns -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateIVR_Campaigns", "group": "IVR_Campaigns", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "name", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"ivr\"" ], "optional": false, "field": "type", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "active", "description": "

Active/Disactive Campaign

" }, { "group": "Body", "type": "Integer", "optional": true, "field": "limitCalls", "description": "

Max 200 calls.

" }, { "group": "Body", "type": "String", "optional": true, "field": "dialOriginateCallerIdName", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "dialOriginateCallerIdNumber", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "dialOriginateTimeout", "description": "

Originate Timeout Seconds (min:1, max:999)

" }, { "group": "Body", "type": "Integer", "optional": true, "field": "dialCongestionMaxRetry", "description": "

#Congestion Retry (min:1, max:999)

" }, { "group": "Body", "type": "Integer", "optional": true, "field": "dialCongestionRetryFrequency", "description": "

Congestion Retry Frequency Minutes (min:1, max:99999)

" }, { "group": "Body", "type": "Integer", "optional": true, "field": "dialBusyMaxRetry", "description": "

#Busy Retry (min:1, max:999)

" }, { "group": "Body", "type": "Integer", "optional": true, "field": "dialBusyRetryFrequency", "description": "

Busy Retry Frequency Minutes (min:1, max:99999)

" }, { "group": "Body", "type": "Integer", "optional": true, "field": "dialNoAnswerMaxRetry", "description": "

#NoAnswer Retry (min:1, max:999)

" }, { "group": "Body", "type": "Integer", "optional": true, "field": "dialNoAnswerRetryFrequency", "description": "

NoAnswer Retry Frequency Minutes (min:1, max:99999)

" }, { "group": "Body", "type": "Integer", "optional": true, "field": "dialGlobalMaxRetry", "description": "

#Global Max Retry (min:1, max:999)

" }, { "group": "Body", "type": "String", "optional": true, "field": "dialTimezone", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "dialGlobalInterval", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"always\"", "\"never\"", "\"onlyIfOpen\"" ], "optional": true, "field": "dialCheckDuplicateType", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "dialAMDActive", "description": "

Active/Disactive AMD

" }, { "group": "Body", "type": "Integer", "optional": true, "field": "dialAMDInitialSilence", "description": "

#AMD Initial Silence

" }, { "group": "Body", "type": "Integer", "optional": true, "field": "dialAMDGreeting", "description": "

#AMD Greeting

" }, { "group": "Body", "type": "Integer", "optional": true, "field": "dialAMDAfterGreetingSilence", "description": "

#AMD After Greeting Silence

" }, { "group": "Body", "type": "Integer", "optional": true, "field": "dialAMDTotalAnalysisTime", "description": "

#AMD Total Analysis Time

" }, { "group": "Body", "type": "Integer", "optional": true, "field": "dialAMDMinWordLength", "description": "

#AMD Min Word Length

" }, { "group": "Body", "type": "Integer", "optional": true, "field": "dialAMDBetweenWordsSilence", "description": "

#AMD Between Words Silence

" }, { "group": "Body", "type": "Integer", "optional": true, "field": "dialAMDMaximumNumberOfWords", "description": "

#AMD Maximum Number Of Words

" }, { "group": "Body", "type": "Integer", "optional": true, "field": "dialAMDSilenceThreshold", "description": "

#AMD Silence Threshold (min:0, max:32767)

" }, { "group": "Body", "type": "Integer", "optional": true, "field": "dialAMDMaximumWordLength", "description": "

#AMD Maximum Word Length

" }, { "group": "Body", "type": "String", "allowedValues": [ "\"DESC\"", "\"ASC\"" ], "optional": true, "field": "dialOrderByScheduledAt", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/campaign/index.js", "groupTitle": "IVR_Campaigns" }, { "type": "delete", "url": "/api/campaigns/{id}", "title": "Deletes a IVR Campaign", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/campaigns/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteIVR_Campaigns", "group": "IVR_Campaigns", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/campaign/index.js", "groupTitle": "IVR_Campaigns" }, { "type": "get", "url": "/api/campaigns/{id}/blacklists", "title": "Get IVR campaign blacklists", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/campaigns/{id}/blacklists -v -u {name}:{password} -X GET", "type": "json" } ], "name": "GetBlackLists", "group": "IVR_Campaigns", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/campaign/index.js", "groupTitle": "IVR_Campaigns" }, { "type": "get", "url": "/api/campaigns/{id}/finals", "title": "Gets IVR campaign hopper finals", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/campaigns/{id}/hopper_finals -v -u {name}:{password} -X GET", "type": "json" } ], "name": "GetHopperFinals", "group": "IVR_Campaigns", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/campaign/index.js", "groupTitle": "IVR_Campaigns" }, { "type": "get", "url": "/api/campaigns/{id}/hopper_histories", "title": "Gets IVR campaign hopper histories", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/campaigns/{id}/hopper_histories -v -u {name}:{password} -X GET", "type": "json" } ], "name": "GetHopperHistories", "group": "IVR_Campaigns", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/campaign/index.js", "groupTitle": "IVR_Campaigns" }, { "type": "get", "url": "/api/campaigns/{id}/hoppers", "title": "Gets IVR campaign hoppers", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/campaigns/{id}/hoppers -v -u {name}:{password} -X GET", "type": "json" } ], "name": "GetHoppers", "group": "IVR_Campaigns", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/campaign/index.js", "groupTitle": "IVR_Campaigns" }, { "type": "get", "url": "/api/campaigns", "title": "Gets a list of IVR Campaigns", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/campaigns -v -u {name}:{password}", "type": "json" } ], "name": "GetIVR_Campaigns", "group": "IVR_Campaigns", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/campaigns?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/campaigns?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/campaigns?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/campaigns?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/campaigns?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/campaign/index.js", "groupTitle": "IVR_Campaigns" }, { "type": "get", "url": "/api/campaigns/{id}/lists", "title": "Get IVR campaign lists", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/campaigns/{id}/lists -v -u {name}:{password} -X GET", "type": "json" } ], "name": "GetLists", "group": "IVR_Campaigns", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/campaign/index.js", "groupTitle": "IVR_Campaigns" }, { "type": "delete", "url": "/api/campaigns/{id}/blacklists", "title": "Remove blacklists from an IVR Campaign", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/campaigns/{id}/blacklists?ids=1&ids=2 -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "RemoveBlackLists", "group": "IVR_Campaigns", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/campaign/index.js", "groupTitle": "IVR_Campaigns" }, { "type": "delete", "url": "/api/campaigns/{id}/lists", "title": "Remove lists from an IVR Campaign", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/campaigns/{id}/lists?ids=1&ids=2 -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "RemoveLists", "group": "IVR_Campaigns", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/campaign/index.js", "groupTitle": "IVR_Campaigns" }, { "type": "get", "url": "/api/campaigns/{id}", "title": "Gets a single IVR Campaign", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/campaigns/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowIVR_Campaigns", "group": "IVR_Campaigns", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/campaign/index.js", "groupTitle": "IVR_Campaigns" }, { "type": "get", "url": "/api/campaigns/{id}/blacks", "title": "Gets IVR campaign hopper blacks", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/campaigns/{id}/hopper_black -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getHopperBlacks", "group": "IVR_Campaigns", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/campaign/index.js", "groupTitle": "IVR_Campaigns" }, { "type": "put", "url": "/api/campaigns/{id}", "title": "Update an existing IVR Campaign", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/campaigns/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateIVR_Campaigns", "group": "IVR_Campaigns", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/campaign/index.js", "groupTitle": "IVR_Campaigns" }, { "type": "post", "url": "/api/integrations/reports", "title": "Creates a new Integration Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/reports -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateIntegration_Reports", "group": "Integration_Reports", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": true, "field": "integration", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "eventChannel", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "exitStatus", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "ticketId", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "integrationId", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "contacts", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "uniqueid", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "calleridnum", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "calleridname", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "queue", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "interface", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "membername", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "agentcalledAt", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "agentconnectAt", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "holdtime", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "agentcomplete", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "agentcompleteAt", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "talktime", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "agentacw", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "acwtime", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "reason", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "agentringnoanswer", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "agentringnoanswerAt", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "agentdump", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "agentdumpAt", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "lastevent", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "channel", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "channelstate", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "channelstatedesc", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "connectedlinenum", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "connectedlinename", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "language", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "accountcode", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "context", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "exten", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "priority", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "destchannel", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "destchannelstate", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "destchannelstatedesc", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "destcalleridnum", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "destcalleridname", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "destconnectedlinenum", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "destconnectedlinename", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "destlanguage", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "destaccountcode", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "destcontext", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "destexten", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "destpriority", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "destuniqueid", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "messageId", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "inReplyTo", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "subject", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "from", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "to", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "cc", "description": "" }, { "group": "Body", "type": "Text", "optional": true, "field": "attachment", "description": "" }, { "group": "Body", "type": "Text", "optional": true, "field": "html", "description": "" }, { "group": "Body", "type": "Text", "optional": true, "field": "text", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"SENT\"", "\"SENDING\"", "\"RECEIVED\"", "\"FAILED\"" ], "optional": true, "field": "status", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "url", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "app", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "appdata", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "projectId", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/integrationReport/index.js", "groupTitle": "Integration_Reports" }, { "type": "delete", "url": "/api/integrations/reports/{id}", "title": "Deletes a Integration Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/reports/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteIntegration_Reports", "group": "Integration_Reports", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/integrationReport/index.js", "groupTitle": "Integration_Reports" }, { "type": "get", "url": "/api/integrations/reports/describe", "title": "Gets table info about Integration Reports", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/reports/describe -v -u {name}:{password}", "type": "json" } ], "name": "DescribeIntegration_Reports", "group": "Integration_Reports", "description": "

Motion will return a HTTP status code 200 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/integrationReport/index.js", "groupTitle": "Integration_Reports" }, { "type": "get", "url": "/api/integrations/reports", "title": "Gets a list of Integration Reports", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/reports -v -u {name}:{password}", "type": "json" } ], "name": "GetIntegration_Reports", "group": "Integration_Reports", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/integrations/reports?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/integrations/reports?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/integrations/reports?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/integrations/reports?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/integrations/reports?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/integrationReport/index.js", "groupTitle": "Integration_Reports" }, { "type": "get", "url": "/api/integrations/reports/{id}", "title": "Gets a single Integration Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/reports/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowIntegration_Reports", "group": "Integration_Reports", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/integrationReport/index.js", "groupTitle": "Integration_Reports" }, { "type": "put", "url": "/api/integrations/reports/{id}", "title": "Update an existing Integration Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/reports/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateIntegration_Reports", "group": "Integration_Reports", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/integrationReport/index.js", "groupTitle": "Integration_Reports" }, { "type": "post", "url": "/api/intervals", "title": "Creates a new Interval", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/intervals -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateIntervals", "group": "Intervals", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": true, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "interval", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/interval/index.js", "groupTitle": "Intervals" }, { "type": "delete", "url": "/api/intervals/{id}", "title": "Deletes a Interval", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/intervals/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteIntervals", "group": "Intervals", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/interval/index.js", "groupTitle": "Intervals" }, { "type": "get", "url": "/api/intervals", "title": "Gets a list of Intervals", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/intervals -v -u {name}:{password}", "type": "json" } ], "name": "GetIntervals", "group": "Intervals", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/intervals?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/intervals?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/intervals?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/intervals?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/intervals?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/interval/index.js", "groupTitle": "Intervals" }, { "type": "get", "url": "/api/intervals/{id}", "title": "Gets a single Interval", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/intervals/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowIntervals", "group": "Intervals", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/interval/index.js", "groupTitle": "Intervals" }, { "type": "post", "url": "/api/intervals/{id}/sub_intervals", "title": "Creates a new sub interval", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/intervals/{id}/sub_intervals -d '{\"interval\": \"00:00-08:30,mon-fri,*,*\"}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addInterval", "group": "Intervals", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/interval/index.js", "groupTitle": "Intervals" }, { "type": "post", "url": "/api/intervals/{id}/sub_intervals/create_many", "title": "Create new sub intervals set", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/intervals/{id}/sub_intervals -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addIntervals", "group": "Intervals", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/interval/index.js", "groupTitle": "Intervals" }, { "type": "get", "url": "/api/intervals/{id}/sub_intervals", "title": "Get sub intervals set", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/intervals/{id}/sub_intervals -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getIntervals", "group": "Intervals", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/interval/index.js", "groupTitle": "Intervals" }, { "type": "put", "url": "/api/intervals/{id}", "title": "Update an existing Interval", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/intervals/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateIntervals", "group": "Intervals", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/interval/index.js", "groupTitle": "Intervals" }, { "type": "post", "url": "/api/jira", "title": "Creates a new issue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/jira -d '{\"key\": \"Bug\", \"description\": \"I can't do it!\"}' \\\n -H \"Content-Type: application/json\" -X POST -v -u {name}:{password}", "type": "json" } ], "name": "Creates_Issue", "group": "Issue", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "allowedValues": [ "\"Bug\"" ], "optional": true, "field": "issuetype", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "summary", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "description", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/jira/index.js", "groupTitle": "Issue" }, { "type": "post", "url": "/api/jscripty/answers/reports", "title": "Creates a new Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/jscripty/answers/reports -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateReports", "group": "JscriptyAnswerReport", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": true, "field": "question", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "answer", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "membername", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "projectname", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "queue", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "uniqueid", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "calleridname", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "calleridnum", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "questionId", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/jscriptyAnswerReport/index.js", "groupTitle": "JscriptyAnswerReport" }, { "type": "delete", "url": "/api/jscripty/answers/reports/{id}", "title": "Deletes a Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/jscripty/answers/reports/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteReports", "group": "JscriptyAnswerReport", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/jscriptyAnswerReport/index.js", "groupTitle": "JscriptyAnswerReport" }, { "type": "get", "url": "/api/jscripty/answers/reports/describe", "title": "Gets table info about Reports", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/jscripty/answers/reports/describe -v -u {name}:{password}", "type": "json" } ], "name": "DescribeReports", "group": "JscriptyAnswerReport", "description": "

Motion will return a HTTP status code 200 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/jscriptyAnswerReport/index.js", "groupTitle": "JscriptyAnswerReport" }, { "type": "get", "url": "/api/jscripty/answers/reports", "title": "Gets a list of Reports", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/jscripty/answers/reports -v -u {name}:{password}", "type": "json" } ], "name": "GetReports", "group": "JscriptyAnswerReport", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/jscripty/answers/reports?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/jscripty/answers/reports?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/jscripty/answers/reports?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/jscripty/answers/reports?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/jscripty/answers/reports?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/jscriptyAnswerReport/index.js", "groupTitle": "JscriptyAnswerReport" }, { "type": "get", "url": "/api/jscripty/answers/reports/{id}", "title": "Gets a single Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/jscripty/answers/reports/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowReports", "group": "JscriptyAnswerReport", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/jscriptyAnswerReport/index.js", "groupTitle": "JscriptyAnswerReport" }, { "type": "put", "url": "/api/jscripty/answers/reports/{id}", "title": "Update an existing Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/jscripty/answers/reports/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateReports", "group": "JscriptyAnswerReport", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/jscriptyAnswerReport/index.js", "groupTitle": "JscriptyAnswerReport" }, { "type": "post", "url": "/api/jscripty/questions/reports", "title": "Creates a new Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/jscripty/questions/reports -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateReports", "group": "JscriptyQuestionReport", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": true, "field": "question", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "answer", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "membername", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "projectname", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "queue", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "uniqueid", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "calleridname", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "calleridnum", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "questionId", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/jscriptyQuestionReport/index.js", "groupTitle": "JscriptyQuestionReport" }, { "type": "delete", "url": "/api/jscripty/questions/reports/{id}", "title": "Deletes a Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/jscripty/questions/reports/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteReports", "group": "JscriptyQuestionReport", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/jscriptyQuestionReport/index.js", "groupTitle": "JscriptyQuestionReport" }, { "type": "get", "url": "/api/jscripty/questions/reports/describe", "title": "Gets table info about Reports", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/jscripty/questions/reports/describe -v -u {name}:{password}", "type": "json" } ], "name": "DescribeReports", "group": "JscriptyQuestionReport", "description": "

Motion will return a HTTP status code 200 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/jscriptyQuestionReport/index.js", "groupTitle": "JscriptyQuestionReport" }, { "type": "get", "url": "/api/jscripty/questions/reports", "title": "Gets a list of Reports", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/jscripty/questions/reports -v -u {name}:{password}", "type": "json" } ], "name": "GetReports", "group": "JscriptyQuestionReport", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/jscripty/questions/reports?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/jscripty/questions/reports?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/jscripty/questions/reports?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/jscripty/questions/reports?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/jscripty/questions/reports?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/jscriptyQuestionReport/index.js", "groupTitle": "JscriptyQuestionReport" }, { "type": "get", "url": "/api/jscripty/questions/reports/{id}", "title": "Gets a single Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/jscripty/questions/reports/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowReports", "group": "JscriptyQuestionReport", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/jscriptyQuestionReport/index.js", "groupTitle": "JscriptyQuestionReport" }, { "type": "put", "url": "/api/jscripty/questions/reports/{id}", "title": "Update an existing Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/jscripty/questions/reports/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateReports", "group": "JscriptyQuestionReport", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/jscriptyQuestionReport/index.js", "groupTitle": "JscriptyQuestionReport" }, { "type": "post", "url": "/api/jscripty/sessions/reports", "title": "Creates a new Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/jscripty/sessions/reports -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateReports", "group": "JscriptySessionReport", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": true, "field": "starttime", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "endtime", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "membername", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "projectname", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "queue", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "uniqueid", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "calleridname", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "calleridnum", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "completed", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/jscriptySessionReport/index.js", "groupTitle": "JscriptySessionReport" }, { "type": "delete", "url": "/api/jscripty/sessions/reports/{id}", "title": "Deletes a Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/jscripty/sessions/reports/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteReports", "group": "JscriptySessionReport", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/jscriptySessionReport/index.js", "groupTitle": "JscriptySessionReport" }, { "type": "get", "url": "/api/jscripty/sessions/reports/describe", "title": "Gets table info about Reports", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/jscripty/sessions/reports/describe -v -u {name}:{password}", "type": "json" } ], "name": "DescribeReports", "group": "JscriptySessionReport", "description": "

Motion will return a HTTP status code 200 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/jscriptySessionReport/index.js", "groupTitle": "JscriptySessionReport" }, { "type": "get", "url": "/api/jscripty/sessions/reports", "title": "Gets a list of Reports", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/jscripty/sessions/reports -v -u {name}:{password}", "type": "json" } ], "name": "GetReports", "group": "JscriptySessionReport", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/jscripty/sessions/reports?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/jscripty/sessions/reports?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/jscripty/sessions/reports?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/jscripty/sessions/reports?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/jscripty/sessions/reports?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/jscriptySessionReport/index.js", "groupTitle": "JscriptySessionReport" }, { "type": "get", "url": "/api/jscripty/sessions/reports/{id}", "title": "Gets a single Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/jscripty/sessions/reports/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowReports", "group": "JscriptySessionReport", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/jscriptySessionReport/index.js", "groupTitle": "JscriptySessionReport" }, { "type": "get", "url": "/api/jscripty/sessions/reports/{id}/questions", "title": "Gets Jscripty Session questions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/jscripty/sessions/reports/{id}/questions -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getQuestions", "group": "JscriptySessionReport", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/jscriptySessionReport/index.js", "groupTitle": "JscriptySessionReport" }, { "type": "put", "url": "/api/jscripty/sessions/reports/{id}", "title": "Update an existing Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/jscripty/sessions/reports/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateReports", "group": "JscriptySessionReport", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/jscriptySessionReport/index.js", "groupTitle": "JscriptySessionReport" }, { "type": "post", "url": "/api/jscripty/projects/clone", "title": "Clone an existing Project", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/jscripty/projects/clone -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CloneProjects", "group": "Jscripty_Projects", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/jscriptyProject/index.js", "groupTitle": "Jscripty_Projects" }, { "type": "post", "url": "/api/jscripty/projects", "title": "Creates a new Project", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/jscripty/projects -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateProjects", "group": "Jscripty_Projects", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": true, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" }, { "group": "Body", "type": "Text", "optional": true, "field": "formData", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "enableUncompleteSave", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/jscriptyProject/index.js", "groupTitle": "Jscripty_Projects" }, { "type": "delete", "url": "/api/jscripty/projects/{id}", "title": "Deletes a Project", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/jscripty/projects/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteProjects", "group": "Jscripty_Projects", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/jscriptyProject/index.js", "groupTitle": "Jscripty_Projects" }, { "type": "get", "url": "/api/jscripty/projects", "title": "Gets a list of Projects", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/jscripty/projects -v -u {name}:{password}", "type": "json" } ], "name": "GetProjects", "group": "Jscripty_Projects", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/jscripty/projects?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/jscripty/projects?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/jscripty/projects?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/jscripty/projects?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/jscripty/projects?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/jscriptyProject/index.js", "groupTitle": "Jscripty_Projects" }, { "type": "get", "url": "/api/jscripty/projects/{id}", "title": "Gets a single Project", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/jscripty/projects/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowProjects", "group": "Jscripty_Projects", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/jscriptyProject/index.js", "groupTitle": "Jscripty_Projects" }, { "type": "get", "url": "/api/jscripty/projects/{id}/answers", "title": "Gets jscripty project answers", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/jscripty/projects/{id}/answers -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getAnswers", "group": "Jscripty_Projects", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/jscriptyProject/index.js", "groupTitle": "Jscripty_Projects" }, { "type": "get", "url": "/api/jscripty/projects/{id}/sessions", "title": "Gets jscripty project sessions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/jscripty/projects/{id}/sessions -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getSessions", "group": "Jscripty_Projects", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/jscriptyProject/index.js", "groupTitle": "Jscripty_Projects" }, { "type": "get", "url": "/api/jscripty/projects/{id}/summary", "title": "Gets jscripty project summary", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/jscripty/projects/{id}/summary -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getSummary", "group": "Jscripty_Projects", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/jscriptyProject/index.js", "groupTitle": "Jscripty_Projects" }, { "type": "put", "url": "/api/jscripty/projects/{id}", "title": "Update an existing Project", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/jscripty/projects/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateProjects", "group": "Jscripty_Projects", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/jscriptyProject/index.js", "groupTitle": "Jscripty_Projects" }, { "type": "get", "url": "/api/license", "title": "Gets License Info", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/license -v -u {name}:{password} -X GET", "type": "json" } ], "name": "index", "group": "License", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/license/index.js", "groupTitle": "License" }, { "type": "put", "url": "/api/license/{id}", "title": "Update an existing License", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/license/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateLiense", "group": "License", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/license/index.js", "groupTitle": "License" }, { "type": "post", "url": "/api/mail/accounts/{id}/in_servers", "title": "Creates a new IMAP server", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/accounts/{id}/in_servers -d '{\"host\": \"host\", \"username\": \"username\", \"password\": \"password\", \"...\": \"...\"}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "AddImap", "group": "Mail_Accounts", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "host", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "authentication", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "user", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "password", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "port", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "tls", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "mailbox", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "connTimeout", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "authTimeout", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "service", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailAccount/index.js", "groupTitle": "Mail_Accounts" }, { "type": "post", "url": "/api/mail/accounts/{id}/out_servers", "title": "Creates a new SMTP server", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/accounts/{id}/out_servers -d '{\"host\": \"host\", \"username\": \"username\", \"password\": \"password\", \"...\": \"...\"}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "AddSmtp", "group": "Mail_Accounts", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "host", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "user", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "pass", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "port", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "secure", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "service", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "authentication", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailAccount/index.js", "groupTitle": "Mail_Accounts" }, { "type": "delete", "url": "/api/mail/accounts/{id}", "title": "Deletes a Account", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/accounts/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteAccounts", "group": "Mail_Accounts", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailAccount/index.js", "groupTitle": "Mail_Accounts" }, { "type": "get", "url": "/api/mail/accounts/describe", "title": "Gets table info about Accounts", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/accounts/describe -v -u {name}:{password}", "type": "json" } ], "name": "DescribeAccounts", "group": "Mail_Accounts", "description": "

Motion will return a HTTP status code 200 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailAccount/index.js", "groupTitle": "Mail_Accounts" }, { "type": "get", "url": "/api/mail/accounts", "title": "Gets a list of Accounts", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/accounts -v -u {name}:{password}", "type": "json" } ], "name": "GetAccounts", "group": "Mail_Accounts", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/mail/accounts?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/mail/accounts?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/mail/accounts?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/mail/accounts?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/mail/accounts?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/mailAccount/index.js", "groupTitle": "Mail_Accounts" }, { "type": "get", "url": "/api/mail/accounts/{id}/in_servers", "title": "Gets account IMAP server", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/accounts/{id}/in_servers -v -u {name}:{password} -X GET", "type": "json" } ], "name": "GetImap", "group": "Mail_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailAccount/index.js", "groupTitle": "Mail_Accounts" }, { "type": "get", "url": "/api/mail/accounts/{id}/out_servers", "title": "Gets account SMTP server", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/accounts/{id}/out_servers -v -u {name}:{password} -X GET", "type": "json" } ], "name": "GetSmtp", "group": "Mail_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailAccount/index.js", "groupTitle": "Mail_Accounts" }, { "type": "delete", "url": "/api/mail/accounts/{id}/in_servers", "title": "Removes IMAP server from an account", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/accounts/{id}/in_servers -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "RemoveImmap", "group": "Mail_Accounts", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailAccount/index.js", "groupTitle": "Mail_Accounts" }, { "type": "delete", "url": "/api/mail/accounts/{id}/out_servers", "title": "Removes SMTP server from an account", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/accounts/{id}/out_servers -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "RemoveSmtp", "group": "Mail_Accounts", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailAccount/index.js", "groupTitle": "Mail_Accounts" }, { "type": "get", "url": "/api/mail/accounts/{id}", "title": "Gets a single Account", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/accounts/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowAccounts", "group": "Mail_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailAccount/index.js", "groupTitle": "Mail_Accounts" }, { "type": "put", "url": "/api/mail/messages/{id}/accept", "title": "Accepts message", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/messages/{id}/accept \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "acceptMessage", "group": "Mail_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailMessage/index.js", "groupTitle": "Mail_Accounts" }, { "type": "post", "url": "/api/mail/accounts/{id}/canned_answers", "title": "Creates new canned answer", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/accounts/{id}/canned_answers -d '{\"name\": \"vip\"}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addAnswer", "group": "Mail_Accounts", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "key", "description": "" }, { "group": "Body", "type": "Text", "optional": false, "field": "value", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailAccount/index.js", "groupTitle": "Mail_Accounts" }, { "type": "post", "url": "/api/mail/accounts/{id}/applications", "title": "Creates new applications", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/accounts/{id}/applications -d '[{\"app\": \"queue\", \"...\": \"...\"}]' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addApplications", "group": "Mail_Accounts", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "Integer", "optional": false, "field": "priority", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "app", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "appdata", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "interval", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailAccount/index.js", "groupTitle": "Mail_Accounts" }, { "type": "post", "url": "/api/mail/accounts/{id}/dispositions", "title": "Creates new disposition", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/accounts/{id}/dispositions -d '{\"name\": \"vip\"}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addDisposition", "group": "Mail_Accounts", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "name", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailAccount/index.js", "groupTitle": "Mail_Accounts" }, { "type": "post", "url": "/api/mail/accounts/{id}/dispositions", "title": "Creates many dispositions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/accounts/{id}/dispositions -d '[{\"name\": \"vip\"}]' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addDispositions", "group": "Mail_Accounts", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "name", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailAccount/index.js", "groupTitle": "Mail_Accounts" }, { "type": "post", "url": "/api/mail/accounts/{id}/interactions", "title": "Creates new interactions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/accounts/{id}/interactions -d '[{\"subject\": \"My printer is on fire!\", \"...\": \"...\"}]' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addInteraction", "group": "Mail_Accounts", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "Boolean", "optional": true, "field": "closed", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "closedAt", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "disposition", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "note", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "inReplyTo", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "to", "description": "" }, { "group": "Body", "type": "Text", "optional": true, "field": "cc", "description": "" }, { "group": "Body", "type": "Text", "optional": true, "field": "subject", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "attach", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "read1stAt", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "substatus", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "substatusAt", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"in\"", "\"out\"" ], "optional": false, "field": "firstMsgDirection", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "lastMsgAt", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"in\"", "\"out\"" ], "optional": false, "field": "lastMsgDirection", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailAccount/index.js", "groupTitle": "Mail_Accounts" }, { "type": "post", "url": "/api/mail/accounts", "title": "Create a mail account", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/accounts \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "create", "group": "Mail_Accounts", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailAccount/index.js", "groupTitle": "Mail_Accounts" }, { "type": "get", "url": "/api/mail/accounts/{id}/canned_answers", "title": "Gets account canned answers", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/accounts/{id}/canned_answers -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getAnswers", "group": "Mail_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailAccount/index.js", "groupTitle": "Mail_Accounts" }, { "type": "get", "url": "/api/mail/accounts/{id}/applications", "title": "Gets account applications", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/accounts/{id}/applications -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getApplications", "group": "Mail_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailAccount/index.js", "groupTitle": "Mail_Accounts" }, { "type": "get", "url": "/api/mail/accounts/{id}/dispositions", "title": "Gets account dispositions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/accounts/{id}/dispositions -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getDispositions", "group": "Mail_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailAccount/index.js", "groupTitle": "Mail_Accounts" }, { "type": "get", "url": "/api/mail/accounts/{id}/interactions", "title": "Gets account interactions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/accounts/{id}/interactions -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getInteraction", "group": "Mail_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailAccount/index.js", "groupTitle": "Mail_Accounts" }, { "type": "get", "url": "/api/mail/accounts/{id}/messages", "title": "Gets account messages", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/accounts/{id}/messages -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getMessages", "group": "Mail_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailAccount/index.js", "groupTitle": "Mail_Accounts" }, { "type": "put", "url": "/api/mail/messages/{id}/reject", "title": "Rejects message", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/messages/{id}/reject \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "rejectMessage", "group": "Mail_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailMessage/index.js", "groupTitle": "Mail_Accounts" }, { "type": "post", "url": "/api/mail/accounts/{id}/send", "title": "Send new mail", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/accounts/{id}/send -d '{from: '\"John Doe\" '}' -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "sendMail", "group": "Mail_Accounts", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailAccount/index.js", "groupTitle": "Mail_Accounts" }, { "type": "put", "url": "/api/mail/accounts/{id}", "title": "Update an existing Account", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/accounts/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateAccounts", "group": "Mail_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailAccount/index.js", "groupTitle": "Mail_Accounts" }, { "type": "get", "url": "/api/mail/accounts/{id}/verify", "title": "Verify mail account", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/accounts/{id}/verify -v -u {name}:{password} -X GET", "type": "json" } ], "name": "verifySmtp", "group": "Mail_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailAccount/index.js", "groupTitle": "Mail_Accounts" }, { "type": "delete", "url": "/api/mail/applications/{id}", "title": "Deletes a Application", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/applications/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteApplications", "group": "Mail_Applications", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailApplication/index.js", "groupTitle": "Mail_Applications" }, { "type": "get", "url": "/api/mail/applications/{id}", "title": "Gets a single Application", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/applications/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowApplications", "group": "Mail_Applications", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailApplication/index.js", "groupTitle": "Mail_Applications" }, { "type": "put", "url": "/api/mail/applications/{id}", "title": "Update an existing Application", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/applications/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateApplications", "group": "Mail_Applications", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailApplication/index.js", "groupTitle": "Mail_Applications" }, { "type": "post", "url": "/api/mail/dispositions", "title": "Creates a new Disposition", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/dispositions -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateDispositions", "group": "Mail_Dispositions", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "name", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailDisposition/index.js", "groupTitle": "Mail_Dispositions" }, { "type": "delete", "url": "/api/mail/dispositions/{id}", "title": "Deletes a Disposition", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/dispositions/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteDispositions", "group": "Mail_Dispositions", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailDisposition/index.js", "groupTitle": "Mail_Dispositions" }, { "type": "get", "url": "/api/mail/dispositions/{id}", "title": "Gets a single Disposition", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/dispositions/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowDispositions", "group": "Mail_Dispositions", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailDisposition/index.js", "groupTitle": "Mail_Dispositions" }, { "type": "put", "url": "/api/mail/dispositions/{id}", "title": "Update an existing Disposition", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/dispositions/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateDispositions", "group": "Mail_Dispositions", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailDisposition/index.js", "groupTitle": "Mail_Dispositions" }, { "type": "post", "url": "/api/mail/interactions/{id}/tags", "title": "Add tags to the interaction", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/interaction/{id}/tags -d '{\"ids\": [1,2]}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "AddTags", "group": "Mail_Interactions", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailInteraction/index.js", "groupTitle": "Mail_Interactions" }, { "type": "post", "url": "/api/mail/interactions", "title": "Creates a new Interaction", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/interactions -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateInteractions", "group": "Mail_Interactions", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "Boolean", "optional": true, "field": "closed", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "closedAt", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "disposition", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "note", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "inReplyTo", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "to", "description": "" }, { "group": "Body", "type": "Text", "optional": true, "field": "cc", "description": "" }, { "group": "Body", "type": "Text", "optional": true, "field": "subject", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "attach", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "read1stAt", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "substatus", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "substatusAt", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"in\"", "\"out\"" ], "optional": false, "field": "firstMsgDirection", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "lastMsgAt", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"in\"", "\"out\"" ], "optional": false, "field": "lastMsgDirection", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailInteraction/index.js", "groupTitle": "Mail_Interactions" }, { "type": "delete", "url": "/api/mail/interactions/{id}", "title": "Deletes a Interaction", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/interactions/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteInteractions", "group": "Mail_Interactions", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailInteraction/index.js", "groupTitle": "Mail_Interactions" }, { "type": "get", "url": "/api/mail/interactions/describe", "title": "Gets table info about Interactions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/interactions/describe -v -u {name}:{password}", "type": "json" } ], "name": "DescribeInteractions", "group": "Mail_Interactions", "description": "

Motion will return a HTTP status code 200 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailInteraction/index.js", "groupTitle": "Mail_Interactions" }, { "type": "get", "url": "/api/mail/interactions", "title": "Gets a list of Interactions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/interactions -v -u {name}:{password}", "type": "json" } ], "name": "GetInteractions", "group": "Mail_Interactions", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/mail/interactions?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/mail/interactions?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/mail/interactions?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/mail/interactions?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/mail/interactions?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/mailInteraction/index.js", "groupTitle": "Mail_Interactions" }, { "type": "delete", "url": "/api/mail/interactions/{id}/tags", "title": "Removes tags from interaction", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/interactions/{id}/tags?ids=1&ids=2 -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "RemoveTags", "group": "Mail_Interactions", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailInteraction/index.js", "groupTitle": "Mail_Interactions" }, { "type": "get", "url": "/api/mail/interactions/{id}", "title": "Gets a single Interaction", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/interactions/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowInteractions", "group": "Mail_Interactions", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailInteraction/index.js", "groupTitle": "Mail_Interactions" }, { "type": "post", "url": "/api/mail/interactions/{id}/messages", "title": "Creates new message", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/interactions/{id}/messages -d '[{\"to\": \"sales@xcally.com\", \"...\": \"...\"}]' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addMessage", "group": "Mail_Interactions", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "Text", "optional": false, "field": "body", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "read", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"in\"", "\"out\"" ], "optional": false, "field": "direction", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "messageId", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "from", "description": "" }, { "group": "Body", "type": "Text", "optional": true, "field": "to", "description": "" }, { "group": "Body", "type": "Text", "optional": true, "field": "cc", "description": "" }, { "group": "Body", "type": "Text", "optional": true, "field": "bcc", "description": "" }, { "group": "Body", "type": "Text", "optional": true, "field": "subject", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "sentAt", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "attach", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "secret", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "readAt", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailInteraction/index.js", "groupTitle": "Mail_Interactions" }, { "type": "get", "url": "/api/mail/interactions/{id}/messages", "title": "Gets interaction messages", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/interactions/{id}/messages -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getMessages", "group": "Mail_Interactions", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailInteraction/index.js", "groupTitle": "Mail_Interactions" }, { "type": "put", "url": "/api/mail/interactions/{id}", "title": "Update an existing Interaction", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/interactions/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateInteractions", "group": "Mail_Interactions", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailInteraction/index.js", "groupTitle": "Mail_Interactions" }, { "type": "delete", "url": "/api/mail/messages/{id}", "title": "Deletes a Message", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/messages/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteMessages", "group": "Mail_Messages", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailMessage/index.js", "groupTitle": "Mail_Messages" }, { "type": "get", "url": "/api/mail/messages/describe", "title": "Gets table info about Messages", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/messages/describe -v -u {name}:{password}", "type": "json" } ], "name": "DescribeMessages", "group": "Mail_Messages", "description": "

Motion will return a HTTP status code 200 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailMessage/index.js", "groupTitle": "Mail_Messages" }, { "type": "get", "url": "/api/mail/messages", "title": "Gets a list of Messages", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/messages -v -u {name}:{password}", "type": "json" } ], "name": "GetMessages", "group": "Mail_Messages", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/mail/messages?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/mail/messages?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/mail/messages?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/mail/messages?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/mail/messages?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/mailMessage/index.js", "groupTitle": "Mail_Messages" }, { "type": "get", "url": "/api/mail/messages/{id}", "title": "Gets a single Message", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/messages/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowMessages", "group": "Mail_Messages", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailMessage/index.js", "groupTitle": "Mail_Messages" }, { "type": "post", "url": "/api/mail/messages", "title": "Create a message", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/messages \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "createMessage", "group": "Mail_Messages", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailMessage/index.js", "groupTitle": "Mail_Messages" }, { "type": "put", "url": "/api/mail/messages/{id}", "title": "Update an existing Message", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/messages/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateMessages", "group": "Mail_Messages", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailMessage/index.js", "groupTitle": "Mail_Messages" }, { "type": "post", "url": "/api/mail/reports/queue", "title": "Creates a new Mail Queue Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/reports/queue -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateMail_Queue_Reports", "group": "Mail_Queue_Reports", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "uniqueid", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "from", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "joinAt", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "leaveAt", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "acceptAt", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "exitAt", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "reason", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailQueueReport/index.js", "groupTitle": "Mail_Queue_Reports" }, { "type": "delete", "url": "/api/mail/reports/queue/{id}", "title": "Deletes a Mail Queue Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/reports/queue/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteMail_Queue_Reports", "group": "Mail_Queue_Reports", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailQueueReport/index.js", "groupTitle": "Mail_Queue_Reports" }, { "type": "get", "url": "/api/mail/reports/queue/describe", "title": "Gets table info about Mail Queue Reports", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/reports/queue/describe -v -u {name}:{password}", "type": "json" } ], "name": "DescribeMail_Queue_Reports", "group": "Mail_Queue_Reports", "description": "

Motion will return a HTTP status code 200 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailQueueReport/index.js", "groupTitle": "Mail_Queue_Reports" }, { "type": "get", "url": "/api/mail/reports/queue", "title": "Gets a list of Mail Queue Reports", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/reports/queue -v -u {name}:{password}", "type": "json" } ], "name": "GetMail_Queue_Reports", "group": "Mail_Queue_Reports", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/mail/reports/queue?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/mail/reports/queue?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/mail/reports/queue?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/mail/reports/queue?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/mail/reports/queue?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/mailQueueReport/index.js", "groupTitle": "Mail_Queue_Reports" }, { "type": "get", "url": "/api/mail/reports/queue/{id}", "title": "Gets a single Mail Queue Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/reports/queue/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowMail_Queue_Reports", "group": "Mail_Queue_Reports", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailQueueReport/index.js", "groupTitle": "Mail_Queue_Reports" }, { "type": "put", "url": "/api/mail/reports/queue/{id}", "title": "Update an existing Mail Queue Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/reports/queue/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateMail_Queue_Reports", "group": "Mail_Queue_Reports", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailQueueReport/index.js", "groupTitle": "Mail_Queue_Reports" }, { "type": "post", "url": "/api/mail/queues/{id}/users", "title": "Add agents to a queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/queues/{id}/users -d '{\"ids\": [1,2], \"penalty\": 2}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "AddAgents", "group": "Mail_Queues", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailQueue/index.js", "groupTitle": "Mail_Queues" }, { "type": "post", "url": "/api/mail/queues/{id}/teams", "title": "Add teams to a queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/queues/{id}/teams -d '{\"ids\": [1,2]}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "AddTeams", "group": "Mail_Queues", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailQueue/index.js", "groupTitle": "Mail_Queues" }, { "type": "post", "url": "/api/mail/queues", "title": "Creates a new Queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/queues -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateQueues", "group": "Mail_Queues", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": true, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "timeout", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"rrmemory\"", "\"beepall\"", "\"roundrobin\"" ], "optional": true, "field": "strategy", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailQueue/index.js", "groupTitle": "Mail_Queues" }, { "type": "delete", "url": "/api/mail/queues/{id}", "title": "Deletes a Queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/queues/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteQueues", "group": "Mail_Queues", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailQueue/index.js", "groupTitle": "Mail_Queues" }, { "type": "get", "url": "/api/mail/queues/describe", "title": "Gets table info about Queues", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/queues/describe -v -u {name}:{password}", "type": "json" } ], "name": "DescribeQueues", "group": "Mail_Queues", "description": "

Motion will return a HTTP status code 200 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailQueue/index.js", "groupTitle": "Mail_Queues" }, { "type": "get", "url": "/api/mail/queues/{id}/users", "title": "Gets queue agents", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/queues/{id}/users -v -u {name}:{password} -X POST", "type": "json" } ], "name": "GetAgents", "group": "Mail_Queues", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailQueue/index.js", "groupTitle": "Mail_Queues" }, { "type": "get", "url": "/api/mail/queues/{id}/members", "title": "GetMembers", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/queues/{id}/members -v -u {name}:{password}", "type": "json" } ], "name": "GetMembers", "group": "Mail_Queues", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailQueue/index.js", "groupTitle": "Mail_Queues" }, { "type": "get", "url": "/api/mail/queues", "title": "Gets a list of Queues", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/queues -v -u {name}:{password}", "type": "json" } ], "name": "GetQueues", "group": "Mail_Queues", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/mail/queues?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/mail/queues?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/mail/queues?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/mail/queues?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/mail/queues?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/mailQueue/index.js", "groupTitle": "Mail_Queues" }, { "type": "get", "url": "/api/mail/queues/{id}/teams", "title": "Gets queues list", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/queues/{id}/teams -v -u {name}:{password}", "type": "json" } ], "name": "GetTeams", "group": "Mail_Queues", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailQueue/index.js", "groupTitle": "Mail_Queues" }, { "type": "delete", "url": "/api/mail/queues/{id}/users", "title": "Removes agents from a queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/queues/{id}/users?ids=1&ids=2 -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "RemoveAgents", "group": "Mail_Queues", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailQueue/index.js", "groupTitle": "Mail_Queues" }, { "type": "get", "url": "/api/mail/queues/{id}", "title": "Gets a single Queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/queues/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowQueues", "group": "Mail_Queues", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailQueue/index.js", "groupTitle": "Mail_Queues" }, { "type": "put", "url": "/api/mail/queues/{id}", "title": "Update an existing Queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/queues/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateQueues", "group": "Mail_Queues", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailQueue/index.js", "groupTitle": "Mail_Queues" }, { "type": "post", "url": "/api/mail/out_servers", "title": "Creates a new SMTP", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/out_servers -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateSMTPs", "group": "Mail_SMTP", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "host", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "user", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "pass", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "port", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "secure", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "service", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "authentication", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailServerOut/index.js", "groupTitle": "Mail_SMTP" }, { "type": "delete", "url": "/api/mail/out_servers/{id}", "title": "Deletes a SMTP", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/out_servers/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteSMTPs", "group": "Mail_SMTP", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailServerOut/index.js", "groupTitle": "Mail_SMTP" }, { "type": "get", "url": "/api/mail/out_servers", "title": "Gets a list of SMTPs", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/out_servers -v -u {name}:{password}", "type": "json" } ], "name": "GetSMTPs", "group": "Mail_SMTP", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/mail/out_servers?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/mail/out_servers?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/mail/out_servers?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/mail/out_servers?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/mail/out_servers?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/mailServerOut/index.js", "groupTitle": "Mail_SMTP" }, { "type": "get", "url": "/api/mail/out_servers/{id}", "title": "Gets a single SMTP", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/out_servers/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowSMTPs", "group": "Mail_SMTP", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailServerOut/index.js", "groupTitle": "Mail_SMTP" }, { "type": "put", "url": "/api/mail/out_servers/{id}", "title": "Update an existing SMTP", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/out_servers/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateSMTPs", "group": "Mail_SMTP", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailServerOut/index.js", "groupTitle": "Mail_SMTP" }, { "type": "post", "url": "/api/mail/substatuses", "title": "Creates a new Queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/substatuses -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateSubstatuses", "group": "Mail_Substatuses", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailSubstatus/index.js", "groupTitle": "Mail_Substatuses" }, { "type": "delete", "url": "/api/mail/substatuses/{id}", "title": "Deletes a Queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/substatuses/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteSubstatuses", "group": "Mail_Substatuses", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailSubstatus/index.js", "groupTitle": "Mail_Substatuses" }, { "type": "get", "url": "/api/mail/substatuses/describe", "title": "Gets table info about Substatuses", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/substatuses/describe -v -u {name}:{password}", "type": "json" } ], "name": "DescribeSubstatuses", "group": "Mail_Substatuses", "description": "

Motion will return a HTTP status code 200 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailSubstatus/index.js", "groupTitle": "Mail_Substatuses" }, { "type": "get", "url": "/api/mail/substatuses", "title": "Gets a list of Substatuses", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/substatuses -v -u {name}:{password}", "type": "json" } ], "name": "GetSubstatuses", "group": "Mail_Substatuses", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/mail/substatuses?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/mail/substatuses?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/mail/substatuses?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/mail/substatuses?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/mail/substatuses?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/mailSubstatus/index.js", "groupTitle": "Mail_Substatuses" }, { "type": "get", "url": "/api/mail/substatuses/{id}", "title": "Gets a single Queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/substatuses/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowSubstatuses", "group": "Mail_Substatuses", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailSubstatus/index.js", "groupTitle": "Mail_Substatuses" }, { "type": "put", "url": "/api/mail/substatuses/{id}", "title": "Update an existing Queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/substatuses/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateSubstatuses", "group": "Mail_Substatuses", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailSubstatus/index.js", "groupTitle": "Mail_Substatuses" }, { "type": "get", "url": "/api/members/reports/describe", "title": "Gets table info about Member Reports", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/members/reports/describe -v -u {name}:{password}", "type": "json" } ], "name": "DescribeMember_Reports", "group": "Member_Reports", "description": "

Motion will return a HTTP status code 200 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/memberReport/index.js", "groupTitle": "Member_Reports" }, { "type": "get", "url": "/api/members/reports", "title": "Gets a list of Member Reports", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/members/reports -v -u {name}:{password}", "type": "json" } ], "name": "GetMember_Reports", "group": "Member_Reports", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/members/reports?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/members/reports?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/members/reports?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/members/reports?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/members/reports?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/memberReport/index.js", "groupTitle": "Member_Reports" }, { "type": "get", "url": "/api/members/reports/{id}", "title": "Gets a single Member Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/members/reports/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowMember_Reports", "group": "Member_Reports", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/memberReport/index.js", "groupTitle": "Member_Reports" }, { "type": "get", "url": "/api/migrations", "title": "Gets a list of Migrations", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/migrations -v -u {name}:{password}", "type": "json" } ], "name": "GetMigrations", "group": "Migrations", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/migrations?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/migrations?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/migrations?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/migrations?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/migrations?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/migration/index.js", "groupTitle": "Migrations" }, { "type": "post", "url": "/api/voice/networks", "title": "Create a new network", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/networks -v -u {name}:{password} -X POST", "type": "json" } ], "name": "Create", "group": "Networks", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/network/index.js", "groupTitle": "Networks" }, { "type": "delete", "url": "/api/voice/networks/{id}", "title": "Deletes a network", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/networks/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "Delete", "group": "Networks", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/network/index.js", "groupTitle": "Networks" }, { "type": "get", "url": "/api/networks", "title": "Gets a list of Networks", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/networks -v -u {name}:{password}", "type": "json" } ], "name": "GetNetworks", "group": "Networks", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/networks?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/networks?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/networks?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/networks?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/networks?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/network/index.js", "groupTitle": "Networks" }, { "type": "get", "url": "/api/networks/{id}", "title": "Gets a single Network", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/networks/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowNetworks", "group": "Networks", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/network/index.js", "groupTitle": "Networks" }, { "type": "put", "url": "/api/voice/networks/{id}", "title": "Update an existing network", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/networks/{id} -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "Update", "group": "Networks", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/network/index.js", "groupTitle": "Networks" }, { "type": "post", "url": "/api/openchannel/accounts", "title": "Creates a new Account", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/accounts -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateAccounts", "group": "Openchannel_Accounts", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "replyUri", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "key", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelAccount/index.js", "groupTitle": "Openchannel_Accounts" }, { "type": "delete", "url": "/api/openchannel/accounts/{id}", "title": "Deletes a Account", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/accounts/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteAccounts", "group": "Openchannel_Accounts", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelAccount/index.js", "groupTitle": "Openchannel_Accounts" }, { "type": "get", "url": "/api/openchannel/accounts/describe", "title": "Gets table info about Accounts", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/accounts/describe -v -u {name}:{password}", "type": "json" } ], "name": "DescribeAccounts", "group": "Openchannel_Accounts", "description": "

Motion will return a HTTP status code 200 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelAccount/index.js", "groupTitle": "Openchannel_Accounts" }, { "type": "get", "url": "/api/openchannel/accounts", "title": "Gets a list of Accounts", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/accounts -v -u {name}:{password}", "type": "json" } ], "name": "GetAccounts", "group": "Openchannel_Accounts", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/openchannel/accounts?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/openchannel/accounts?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/openchannel/accounts?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/openchannel/accounts?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/openchannel/accounts?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/openchannelAccount/index.js", "groupTitle": "Openchannel_Accounts" }, { "type": "delete", "url": "/api/openchannel/accounts/{id}/canned_answers", "title": "Removes canned answers from account", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/accounts/{id}/canned_answers?ids=1&ids=2 -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "RemoveAnswers", "group": "Openchannel_Accounts", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelAccount/index.js", "groupTitle": "Openchannel_Accounts" }, { "type": "get", "url": "/api/openchannel/accounts/{id}", "title": "Gets a single Account", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/accounts/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowAccounts", "group": "Openchannel_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelAccount/index.js", "groupTitle": "Openchannel_Accounts" }, { "type": "post", "url": "/api/openchannel/accounts/{id}/canned_answers", "title": "Creates new canned answer", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/accounts/{id}/canned_answers -d '{\"name\": \"vip\"}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addAnswer", "group": "Openchannel_Accounts", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "key", "description": "" }, { "group": "Body", "type": "Text", "optional": false, "field": "value", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelAccount/index.js", "groupTitle": "Openchannel_Accounts" }, { "type": "post", "url": "/api/openchannel/accounts/{id}/applications", "title": "Creates new applications", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/accounts/{id}/applications -d '[{\"app\": \"queue\", \"...\": \"...\"}]' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addApplications", "group": "Openchannel_Accounts", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "Integer", "optional": false, "field": "priority", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "app", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "appdata", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "interval", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelAccount/index.js", "groupTitle": "Openchannel_Accounts" }, { "type": "post", "url": "/api/openchannel/accounts/{id}/dispositions", "title": "Creates new disposition", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/accounts/{id}/dispositions -d '{\"name\": \"Satisfied\"}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addDisposition", "group": "Openchannel_Accounts", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "name", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelAccount/index.js", "groupTitle": "Openchannel_Accounts" }, { "type": "post", "url": "/api/openchannel/accounts/{id}/dispositions", "title": "Creates many dispositions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/accounts/{id}/dispositions -d '[{\"name\": \"Satisfied\"}]' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addDispositions", "group": "Openchannel_Accounts", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "name", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelAccount/index.js", "groupTitle": "Openchannel_Accounts" }, { "type": "get", "url": "/api/openchannel/accounts/{id}/canned_answers", "title": "Gets account canned answers", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/accounts/{id}/canned_answers -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getAnswers", "group": "Openchannel_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelAccount/index.js", "groupTitle": "Openchannel_Accounts" }, { "type": "get", "url": "/api/openchannel/accounts/{id}/applications", "title": "Gets account applications", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/accounts/{id}/applications -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getApplications", "group": "Openchannel_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelAccount/index.js", "groupTitle": "Openchannel_Accounts" }, { "type": "get", "url": "/api/openchannel/accounts/{id}/dispositions", "title": "Gets account dispositions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/accounts/{id}/dispositions -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getDispositions", "group": "Openchannel_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelAccount/index.js", "groupTitle": "Openchannel_Accounts" }, { "type": "get", "url": "/api/openchannel/accounts/{id}/interactions", "title": "Gets Openchannel Account Interactions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/accounts/{id}/interactions -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getInteractions", "group": "Openchannel_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelAccount/index.js", "groupTitle": "Openchannel_Accounts" }, { "type": "post", "url": "/api/openchannel/accounts/{id}/notify", "title": "Notify new message", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/accounts/{id}/notify -d '{\"body\": \"hello world\", \"...\": \"...\"}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "notify", "group": "Openchannel_Accounts", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

Follow this link to check the documentation:

https://wiki.xcallymotion.com/display/XMV/New+Channels+Configuration+Steps#NewChannelsConfigurationSteps-BuildyourownChannelservice

", "version": "0.0.0", "filename": "server/api/openchannelAccount/index.js", "groupTitle": "Openchannel_Accounts" }, { "type": "put", "url": "/api/openchannel/accounts/{id}", "title": "Update an existing Account", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/accounts/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateAccounts", "group": "Openchannel_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelAccount/index.js", "groupTitle": "Openchannel_Accounts" }, { "type": "post", "url": "/api/openchannel/applications", "title": "Creates a new Application", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/applications -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateApplications", "group": "Openchannel_Applications", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "Integer", "optional": false, "field": "priority", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "app", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "appdata", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "interval", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelApplication/index.js", "groupTitle": "Openchannel_Applications" }, { "type": "delete", "url": "/api/openchannel/applications/{id}", "title": "Deletes a Application", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/applications/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteApplications", "group": "Openchannel_Applications", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelApplication/index.js", "groupTitle": "Openchannel_Applications" }, { "type": "get", "url": "/api/openchannel/applications", "title": "Gets a list of Applications", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/applications -v -u {name}:{password}", "type": "json" } ], "name": "GetApplications", "group": "Openchannel_Applications", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/openchannel/applications?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/openchannel/applications?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/openchannel/applications?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/openchannel/applications?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/openchannel/applications?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/openchannelApplication/index.js", "groupTitle": "Openchannel_Applications" }, { "type": "get", "url": "/api/openchannel/applications/{id}", "title": "Gets a single Application", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/applications/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowApplications", "group": "Openchannel_Applications", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelApplication/index.js", "groupTitle": "Openchannel_Applications" }, { "type": "put", "url": "/api/openchannel/applications/{id}", "title": "Update an existing Application", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/applications/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateApplications", "group": "Openchannel_Applications", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelApplication/index.js", "groupTitle": "Openchannel_Applications" }, { "type": "post", "url": "/api/openchannel/dispositions", "title": "Creates a new Disposition", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/dispositions -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateDispositions", "group": "Openchannel_Dispositions", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "name", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelDisposition/index.js", "groupTitle": "Openchannel_Dispositions" }, { "type": "delete", "url": "/api/openchannel/dispositions/{id}", "title": "Deletes a Disposition", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/dispositions/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteDispositions", "group": "Openchannel_Dispositions", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelDisposition/index.js", "groupTitle": "Openchannel_Dispositions" }, { "type": "get", "url": "/api/openchannel/dispositions/{id}", "title": "Gets a single Disposition", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/dispositions/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowDispositions", "group": "Openchannel_Dispositions", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelDisposition/index.js", "groupTitle": "Openchannel_Dispositions" }, { "type": "put", "url": "/api/openchannel/dispositions/{id}", "title": "Update an existing Disposition", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/dispositions/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateDispositions", "group": "Openchannel_Dispositions", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelDisposition/index.js", "groupTitle": "Openchannel_Dispositions" }, { "type": "post", "url": "/api/openchannel/interactions/{id}/tags", "title": "Add tags to the interaction", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/interaction/{id}/tags -d '{\"ids\": [1,2]}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "AddTags", "group": "Openchannel_Interactions", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelInteraction/index.js", "groupTitle": "Openchannel_Interactions" }, { "type": "post", "url": "/api/openchannel/interactions", "title": "Creates a new Interaction", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/interactions -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateInteractions", "group": "Openchannel_Interactions", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "Boolean", "optional": true, "field": "closed", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "closedAt", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "disposition", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "note", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "read1stAt", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "threadId", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "externalUrl", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "lastMsgAt", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"in\"", "\"out\"" ], "optional": false, "field": "lastMsgDirection", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelInteraction/index.js", "groupTitle": "Openchannel_Interactions" }, { "type": "delete", "url": "/api/openchannel/interactions/{id}", "title": "Deletes a Interaction", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/interactions/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteInteractions", "group": "Openchannel_Interactions", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelInteraction/index.js", "groupTitle": "Openchannel_Interactions" }, { "type": "get", "url": "/api/openchannel/interactions/describe", "title": "Gets table info about Interactions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/interactions/describe -v -u {name}:{password}", "type": "json" } ], "name": "DescribeInteractions", "group": "Openchannel_Interactions", "description": "

Motion will return a HTTP status code 200 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelInteraction/index.js", "groupTitle": "Openchannel_Interactions" }, { "type": "get", "url": "/api/openchannel/interactions", "title": "Gets a list of Interactions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/interactions -v -u {name}:{password}", "type": "json" } ], "name": "GetInteractions", "group": "Openchannel_Interactions", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/openchannel/interactions?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/openchannel/interactions?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/openchannel/interactions?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/openchannel/interactions?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/openchannel/interactions?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/openchannelInteraction/index.js", "groupTitle": "Openchannel_Interactions" }, { "type": "delete", "url": "/api/mail/accounts/{id}/canned_answers", "title": "Removes canned answers from account", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/accounts/{id}/canned_answers?ids=1&ids=2 -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "RemoveAnswers", "group": "Openchannel_Interactions", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailAccount/index.js", "groupTitle": "Openchannel_Interactions" }, { "type": "delete", "url": "/api/openchannel/interactions/{id}/tags", "title": "Removes tags from interaction", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/interactions/{id}/tags?ids=1&ids=2 -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "RemoveTags", "group": "Openchannel_Interactions", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelInteraction/index.js", "groupTitle": "Openchannel_Interactions" }, { "type": "get", "url": "/api/openchannel/interactions/{id}", "title": "Gets a single Interaction", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/interactions/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowInteractions", "group": "Openchannel_Interactions", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelInteraction/index.js", "groupTitle": "Openchannel_Interactions" }, { "type": "post", "url": "/api/openchannel/interactions/{id}/messages", "title": "Creates new messages", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/interactions/{id}/messages -d '[{\"to\": \"+3901119886500\", \"...\": \"...\"}]' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addMessage", "group": "Openchannel_Interactions", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "Text", "optional": false, "field": "body", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "read", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "secret", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"in\"", "\"out\"" ], "optional": false, "field": "direction", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "readAt", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelInteraction/index.js", "groupTitle": "Openchannel_Interactions" }, { "type": "get", "url": "/api/openchannel/interactions/{id}/messages", "title": "Gets interaction messages", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/interactions/{id}/messages -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getMessages", "group": "Openchannel_Interactions", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelInteraction/index.js", "groupTitle": "Openchannel_Interactions" }, { "type": "put", "url": "/api/openchannel/interactions/{id}", "title": "Update an existing Interaction", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/interactions/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateInteractions", "group": "Openchannel_Interactions", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelInteraction/index.js", "groupTitle": "Openchannel_Interactions" }, { "type": "post", "url": "/api/openchannel/messages", "title": "Creates a new Message", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/messages -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateMessages", "group": "Openchannel_Messages", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "Text", "optional": false, "field": "body", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "read", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "secret", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"in\"", "\"out\"" ], "optional": false, "field": "direction", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "readAt", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelMessage/index.js", "groupTitle": "Openchannel_Messages" }, { "type": "delete", "url": "/api/openchannel/messages/{id}", "title": "Deletes a Message", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/messages/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteMessages", "group": "Openchannel_Messages", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelMessage/index.js", "groupTitle": "Openchannel_Messages" }, { "type": "get", "url": "/api/openchannel/messages/describe", "title": "Gets table info about Messages", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/messages/describe -v -u {name}:{password}", "type": "json" } ], "name": "DescribeMessages", "group": "Openchannel_Messages", "description": "

Motion will return a HTTP status code 200 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelMessage/index.js", "groupTitle": "Openchannel_Messages" }, { "type": "get", "url": "/api/openchannel/messages", "title": "Gets a list of Messages", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/messages -v -u {name}:{password}", "type": "json" } ], "name": "GetMessages", "group": "Openchannel_Messages", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/openchannel/messages?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/openchannel/messages?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/openchannel/messages?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/openchannel/messages?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/openchannel/messages?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/openchannelMessage/index.js", "groupTitle": "Openchannel_Messages" }, { "type": "get", "url": "/api/openchannel/messages/{id}", "title": "Gets a single Message", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/messages/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowMessages", "group": "Openchannel_Messages", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelMessage/index.js", "groupTitle": "Openchannel_Messages" }, { "type": "put", "url": "/api/openchannel/messages/{id}/accept", "title": "Accepts message", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/messages/{id}/accept \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "acceptMessage", "group": "Openchannel_Messages", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelMessage/index.js", "groupTitle": "Openchannel_Messages" }, { "type": "put", "url": "/api/openchannel/messages/{id}/reject", "title": "Rejects message", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/messages/{id}/reject \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "rejectMessage", "group": "Openchannel_Messages", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelMessage/index.js", "groupTitle": "Openchannel_Messages" }, { "type": "put", "url": "/api/openchannel/messages/{id}", "title": "Update an existing Message", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/messages/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateMessages", "group": "Openchannel_Messages", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelMessage/index.js", "groupTitle": "Openchannel_Messages" }, { "type": "post", "url": "/api/openchannel/reports/queue", "title": "Creates a new Openchannel Queue Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/reports/queue -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateOpenchannel_Queue_Reports", "group": "Openchannel_Queue_Reports", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "uniqueid", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "from", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "joinAt", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "leaveAt", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "acceptAt", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "exitAt", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "reason", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelQueueReport/index.js", "groupTitle": "Openchannel_Queue_Reports" }, { "type": "delete", "url": "/api/openchannel/reports/queue/{id}", "title": "Deletes a Openchannel Queue Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/reports/queue/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteOpenchannel_Queue_Reports", "group": "Openchannel_Queue_Reports", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelQueueReport/index.js", "groupTitle": "Openchannel_Queue_Reports" }, { "type": "get", "url": "/api/openchannel/reports/queue/describe", "title": "Gets table info about Openchannel Queue Reports", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/reports/queue/describe -v -u {name}:{password}", "type": "json" } ], "name": "DescribeOpenchannel_Queue_Reports", "group": "Openchannel_Queue_Reports", "description": "

Motion will return a HTTP status code 200 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelQueueReport/index.js", "groupTitle": "Openchannel_Queue_Reports" }, { "type": "get", "url": "/api/openchannel/reports/queue", "title": "Gets a list of Openchannel Queue Reports", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/reports/queue -v -u {name}:{password}", "type": "json" } ], "name": "GetOpenchannel_Queue_Reports", "group": "Openchannel_Queue_Reports", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/openchannel/reports/queue?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/openchannel/reports/queue?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/openchannel/reports/queue?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/openchannel/reports/queue?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/openchannel/reports/queue?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/openchannelQueueReport/index.js", "groupTitle": "Openchannel_Queue_Reports" }, { "type": "get", "url": "/api/openchannel/reports/queue/{id}", "title": "Gets a single Openchannel Queue Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/reports/queue/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowOpenchannel_Queue_Reports", "group": "Openchannel_Queue_Reports", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelQueueReport/index.js", "groupTitle": "Openchannel_Queue_Reports" }, { "type": "put", "url": "/api/openchannel/reports/queue/{id}", "title": "Update an existing Openchannel Queue Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/reports/queue/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateOpenchannel_Queue_Reports", "group": "Openchannel_Queue_Reports", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelQueueReport/index.js", "groupTitle": "Openchannel_Queue_Reports" }, { "type": "post", "url": "/api/openchannel/queues/{id}/users", "title": "Add agents to a queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/queues/{id}/users -d '{\"ids\": [1,2], \"penalty\": 2}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "AddAgents", "group": "Openchannel_Queues", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelQueue/index.js", "groupTitle": "Openchannel_Queues" }, { "type": "post", "url": "/api/openchannel/queues/{id}/teams", "title": "Add teams to a queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/queues/{id}/teams -d '{\"ids\": [1,2]}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "AddTeams", "group": "Openchannel_Queues", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelQueue/index.js", "groupTitle": "Openchannel_Queues" }, { "type": "post", "url": "/api/openchannel/queues", "title": "Creates a new Queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/queues -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateQueues", "group": "Openchannel_Queues", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": true, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "timeout", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"rrmemory\"", "\"beepall\"", "\"roundrobin\"" ], "optional": true, "field": "strategy", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelQueue/index.js", "groupTitle": "Openchannel_Queues" }, { "type": "delete", "url": "/api/openchannel/queues/{id}", "title": "Deletes a Queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/queues/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteQueues", "group": "Openchannel_Queues", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelQueue/index.js", "groupTitle": "Openchannel_Queues" }, { "type": "get", "url": "/api/openchannel/queues/describe", "title": "Gets table info about Queues", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/queues/describe -v -u {name}:{password}", "type": "json" } ], "name": "DescribeQueues", "group": "Openchannel_Queues", "description": "

Motion will return a HTTP status code 200 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelQueue/index.js", "groupTitle": "Openchannel_Queues" }, { "type": "get", "url": "/api/openchannel/queues/{id}/users", "title": "Gets queue agents", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/queues/{id}/users -v -u {name}:{password} -X POST", "type": "json" } ], "name": "GetAgents", "group": "Openchannel_Queues", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelQueue/index.js", "groupTitle": "Openchannel_Queues" }, { "type": "get", "url": "/api/openchannel/queues/{id}/members", "title": "GetMembers", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/queues/{id}/members -v -u {name}:{password}", "type": "json" } ], "name": "GetMembers", "group": "Openchannel_Queues", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelQueue/index.js", "groupTitle": "Openchannel_Queues" }, { "type": "get", "url": "/api/openchannel/queues", "title": "Gets a list of Queues", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/queues -v -u {name}:{password}", "type": "json" } ], "name": "GetQueues", "group": "Openchannel_Queues", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/openchannel/queues?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/openchannel/queues?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/openchannel/queues?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/openchannel/queues?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/openchannel/queues?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/openchannelQueue/index.js", "groupTitle": "Openchannel_Queues" }, { "type": "get", "url": "/api/openchannel/queues/{id}/teams", "title": "Gets queues list", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/queues/{id}/teams -v -u {name}:{password}", "type": "json" } ], "name": "GetTeams", "group": "Openchannel_Queues", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelQueue/index.js", "groupTitle": "Openchannel_Queues" }, { "type": "delete", "url": "/api/openchannel/queues/{id}/users", "title": "Removes agents from a queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/queues/{id}/users?ids=1&ids=2 -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "RemoveAgents", "group": "Openchannel_Queues", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelQueue/index.js", "groupTitle": "Openchannel_Queues" }, { "type": "get", "url": "/api/openchannel/queues/{id}", "title": "Gets a single Queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/queues/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowQueues", "group": "Openchannel_Queues", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelQueue/index.js", "groupTitle": "Openchannel_Queues" }, { "type": "put", "url": "/api/openchannel/queues/{id}", "title": "Update an existing Queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/queues/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateQueues", "group": "Openchannel_Queues", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelQueue/index.js", "groupTitle": "Openchannel_Queues" }, { "type": "post", "url": "/api/pauses", "title": "Creates a new Pause", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/pauses -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreatePauses", "group": "Pauses", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/pause/index.js", "groupTitle": "Pauses" }, { "type": "delete", "url": "/api/pauses/{id}", "title": "Deletes a Pause", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/pauses/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeletePauses", "group": "Pauses", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/pause/index.js", "groupTitle": "Pauses" }, { "type": "get", "url": "/api/pauses", "title": "Gets a list of Pauses", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/pauses -v -u {name}:{password}", "type": "json" } ], "name": "GetPauses", "group": "Pauses", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/pauses?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/pauses?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/pauses?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/pauses?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/pauses?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/pause/index.js", "groupTitle": "Pauses" }, { "type": "get", "url": "/api/pauses/{id}", "title": "Gets a single Pause", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/pauses/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowPauses", "group": "Pauses", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/pause/index.js", "groupTitle": "Pauses" }, { "type": "put", "url": "/api/pauses/{id}", "title": "Update an existing Pause", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/pauses/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updatePauses", "group": "Pauses", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/pause/index.js", "groupTitle": "Pauses" }, { "type": "get", "url": "/api/pm2/{id}", "title": "Gets a single pm2 process", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/pm2/{id} -v -u {name}:{password}", "type": "json" } ], "name": "GetPm2Process", "group": "Pm2", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/pm2/index.js", "groupTitle": "Pm2" }, { "type": "get", "url": "/api/pm2", "title": "Gets pm2 processes", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/pm2 -v -u {name}:{password}", "type": "json" } ], "name": "GetPm2Processes", "group": "Pm2", "description": "

Motion returns the pm2 processes list.

", "version": "0.0.0", "filename": "server/api/pm2/index.js", "groupTitle": "Pm2" }, { "type": "put", "url": "/api/pm2/{id}", "title": "Update an existing Process", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/pm2/{id} -d '{\"status\": \"online\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateProcesses", "group": "Pm2", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/pm2/index.js", "groupTitle": "Pm2" }, { "type": "get", "url": "/api/rpc/campaigns/", "title": "Gets a list of campaigns", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/rpc/campaigns -v -u {name}:{password}", "type": "json" } ], "name": "Campaigns", "group": "RPC_Realtime", "description": "

Motion will return a list of realtime campaigns parameters.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/rpc/index.js", "groupTitle": "RPC_Realtime" }, { "type": "get", "url": "/api/rpc/fax/accounts", "title": "Gets a list of FaxAccounts", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/rpc/fax/accounts -v -u {name}:{password}", "type": "json" } ], "name": "FaxAccounts", "group": "RPC_Realtime", "description": "

Motion will return a list of realtime fax account parameters.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/rpc/index.js", "groupTitle": "RPC_Realtime" }, { "type": "put", "url": "/api/rpc/agents/:id/capacity", "title": "Sets agent capacity", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/rpc/agents/:id/capacity -v -u {name}:{password}", "type": "json" } ], "name": "RTAgentCapacity", "group": "RPC_Realtime", "description": "

Motion will return the current agent capacity.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/rpc/index.js", "groupTitle": "RPC_Realtime" }, { "type": "get", "url": "/api/rpc/agents", "title": "Gets a list of RTAgents", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/rpc/agents -v -u {name}:{password}", "type": "json" } ], "name": "RTAgents", "group": "RPC_Realtime", "description": "

Motion will return a list of realtime agents parameters.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/rpc/index.js", "groupTitle": "RPC_Realtime" }, { "type": "get", "url": "/api/rpc/chat/queues", "title": "Gets a list of RTChatQueues", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/rpc/chat/queues -v -u {name}:{password}", "type": "json" } ], "name": "RTChatQueues", "group": "RPC_Realtime", "description": "

Motion will return a list of realtime chat queues parameters.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/rpc/index.js", "groupTitle": "RPC_Realtime" }, { "type": "get", "url": "/api/rpc/fax/queues", "title": "Gets a list of RTFaxQueues", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/rpc/fax/queues -v -u {name}:{password}", "type": "json" } ], "name": "RTFaxQueues", "group": "RPC_Realtime", "description": "

Motion will return a list of realtime fax queues parameters.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/rpc/index.js", "groupTitle": "RPC_Realtime" }, { "type": "get", "url": "/api/rpc/mail/accounts", "title": "Gets a list of RTMailAccounts", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/rpc/mail/accounts -v -u {name}:{password}", "type": "json" } ], "name": "RTMailAccounts", "group": "RPC_Realtime", "description": "

Motion will return a list of realtime mail account parameters.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/rpc/index.js", "groupTitle": "RPC_Realtime" }, { "type": "get", "url": "/api/rpc/mail/queues", "title": "Gets a list of RTMailQueues", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/rpc/mail/queues -v -u {name}:{password}", "type": "json" } ], "name": "RTMailQueues", "group": "RPC_Realtime", "description": "

Motion will return a list of realtime mail queues parameters.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/rpc/index.js", "groupTitle": "RPC_Realtime" }, { "type": "get", "url": "/api/rpc/openchannel/queues", "title": "Gets a list of RTOpenchannelQueues", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/rpc/openchannel/queues -v -u {name}:{password}", "type": "json" } ], "name": "RTOpenchannelQueues", "group": "RPC_Realtime", "description": "

Motion will return a list of realtime openchannel queues parameters.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/rpc/index.js", "groupTitle": "RPC_Realtime" }, { "type": "get", "url": "/api/rpc/outbound/channels", "title": "Gets a list of RTOutboundChannels", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/rpc/outbound/channels -v -u {name}:{password}", "type": "json" } ], "name": "RTOutboundChannels", "group": "RPC_Realtime", "description": "

Motion will return a list of realtime outbound channels.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/rpc/index.js", "groupTitle": "RPC_Realtime" }, { "type": "get", "url": "/api/rpc/sms/queues", "title": "Gets a list of RTSmsQueues", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/rpc/sms/queues -v -u {name}:{password}", "type": "json" } ], "name": "RTSmsQueues", "group": "RPC_Realtime", "description": "

Motion will return a list of realtime sms queues parameters.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/rpc/index.js", "groupTitle": "RPC_Realtime" }, { "type": "get", "url": "/api/rpc/telephones", "title": "Gets a list of RTTelephones", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/rpc/telephones -v -u {name}:{password}", "type": "json" } ], "name": "RTTelephones", "group": "RPC_Realtime", "description": "

Motion will return a list of telephones parameters.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/rpc/index.js", "groupTitle": "RPC_Realtime" }, { "type": "get", "url": "/api/rpc/trunks", "title": "Gets a list of RTTrunks", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/rpc/trunks -v -u {name}:{password}", "type": "json" } ], "name": "RTTrunks", "group": "RPC_Realtime", "description": "

Motion will return a list of realtime trunks parameters.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/rpc/index.js", "groupTitle": "RPC_Realtime" }, { "type": "get", "url": "/api/rpc/voice/channels", "title": "Gets a list of RTVoiceChannelMixMonitor", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/rpc/voice/channels/{uniqueid}/mixmonitor -v -u {name}:{password}", "type": "json" } ], "name": "RTVoiceChannelMixMonitor", "group": "RPC_Realtime", "description": "

Motion will return a list of realtime voice channel mixmonitor.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/rpc/index.js", "groupTitle": "RPC_Realtime" }, { "type": "get", "url": "/api/rpc/voice/channels", "title": "Gets a list of RTVoiceChannelStopMixMonitor", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/rpc/voice/channels/{uniqueid}/stopmixmonitor -v -u {name}:{password}", "type": "json" } ], "name": "RTVoiceChannelStopMixMonitor", "group": "RPC_Realtime", "description": "

Motion will return a list of realtime voice channel stopmixmonitor.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/rpc/index.js", "groupTitle": "RPC_Realtime" }, { "type": "get", "url": "/api/rpc/voice/channels", "title": "Gets a list of RTVoiceChannels", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/rpc/voice/channels -v -u {name}:{password}", "type": "json" } ], "name": "RTVoiceChannels", "group": "RPC_Realtime", "description": "

Motion will return a list of realtime voice channels.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/rpc/index.js", "groupTitle": "RPC_Realtime" }, { "type": "get", "url": "/api/rpc/voice/queues/channels/{uniqueid}", "title": "Gets a single RTVoiceQueueChannel", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/rpc/voice/queues/channels/{uniqueid} -v -u {name}:{password}", "type": "json" } ], "name": "RTVoiceQueueChannel", "group": "RPC_Realtime", "description": "

Motion will return a specific realtime voice queue channel.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/rpc/index.js", "groupTitle": "RPC_Realtime" }, { "type": "get", "url": "/api/rpc/voice/queues/channels/{uniqueid}/hangup", "title": "Hangup a single RTVoiceQueueChannel", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/rpc/voice/queues/channels/{uniqueid}/hangup -v -u {name}:{password}", "type": "json" } ], "name": "RTVoiceQueueChannelHangup", "group": "RPC_Realtime", "description": "

Motion will hangup a specific realtime voice queue channel.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/rpc/index.js", "groupTitle": "RPC_Realtime" }, { "type": "get", "url": "/api/rpc/voice/queues/channels/{uniqueid}/redirect/{exten}", "title": "Hangup a single RTVoiceQueueChannel", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/rpc/voice/queues/channels/{uniqueid}/redirect/{exten} -v -u {name}:{password}", "type": "json" } ], "name": "RTVoiceQueueChannelRedirect", "group": "RPC_Realtime", "description": "

Motion will redirect a specific realtime voice queue channel to a specific extension.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/rpc/index.js", "groupTitle": "RPC_Realtime" }, { "type": "get", "url": "/api/rpc/voice/queues/preview/{id}", "title": "Gets a single preview contact", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/rpc/voice/queues/preview/{id} -v -u {name}:{password}", "type": "json" } ], "name": "RTVoiceQueuePreview", "group": "RPC_Realtime", "description": "

Motion will return a specific preview contact.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/rpc/index.js", "groupTitle": "RPC_Realtime" }, { "type": "get", "url": "/api/rpc/outbound", "title": "Gets a list of RTOutbound", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/rpc/outbound -v -u {name}:{password}", "type": "json" } ], "name": "RTVoiceQueues", "group": "RPC_Realtime", "description": "

Motion will return a list of realtime outbound parameters.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/rpc/index.js", "groupTitle": "RPC_Realtime" }, { "type": "get", "url": "/api/rpc/voice/queues", "title": "Gets a list of RTVoiceQueues", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/rpc/voice/queues -v -u {name}:{password}", "type": "json" } ], "name": "RTVoiceQueues", "group": "RPC_Realtime", "description": "

Motion will return a list of realtime voice queues parameters.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/rpc/index.js", "groupTitle": "RPC_Realtime" }, { "type": "get", "url": "/api/rpc/voice/queues/channels", "title": "Gets a list of RTVoiceQueuesChannels", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/rpc/voice/queues/channels -v -u {name}:{password}", "type": "json" } ], "name": "RTVoiceQueuesChannels", "group": "RPC_Realtime", "description": "

Motion will return a list of realtime voice queues channels.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/rpc/index.js", "groupTitle": "RPC_Realtime" }, { "type": "get", "url": "/api/rpc/chat/queues/waitinginteractions", "title": "Gets a list of chatQueuesWaitingInteractions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/rpc/voice/queues/waitinginteractions -v -u {name}:{password}", "type": "json" } ], "name": "chatQueuesWaitingInteractions", "group": "RPC_Realtime", "description": "

Motion will return a list of realtime waiting chat queues interctions.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/rpc/index.js", "groupTitle": "RPC_Realtime" }, { "type": "get", "url": "/api/rpc/fax/queues/waitinginteractions", "title": "Gets a list of faxQueuesWaitingInteractions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/rpc/fax/queues/waitinginteractions -v -u {name}:{password}", "type": "json" } ], "name": "faxQueuesWaitingInteractions", "group": "RPC_Realtime", "description": "

Motion will return a list of realtime waiting fax queues interctions.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/rpc/index.js", "groupTitle": "RPC_Realtime" }, { "type": "get", "url": "/api/rpc/mail/queues/waitinginteractions", "title": "Gets a list of mailQueuesWaitingInteractions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/rpc/mail/queues/waitinginteractions -v -u {name}:{password}", "type": "json" } ], "name": "mailQueuesWaitingInteractions", "group": "RPC_Realtime", "description": "

Motion will return a list of realtime waiting mail queues interctions.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/rpc/index.js", "groupTitle": "RPC_Realtime" }, { "type": "get", "url": "/api/rpc/openchannel/queues/waitinginteractions", "title": "Gets a list of openchannelQueuesWaitingInteractions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/rpc/openchannel/queues/waitinginteractions -v -u {name}:{password}", "type": "json" } ], "name": "openchannelQueuesWaitingInteractions", "group": "RPC_Realtime", "description": "

Motion will return a list of realtime waiting openchannel queues interctions.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/rpc/index.js", "groupTitle": "RPC_Realtime" }, { "type": "get", "url": "/api/rpc/sms/queues/waitinginteractions", "title": "Gets a list of smsQueuesWaitingInteractions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/rpc/sms/queues/waitinginteractions -v -u {name}:{password}", "type": "json" } ], "name": "smsQueuesWaitingInteractions", "group": "RPC_Realtime", "description": "

Motion will return a list of realtime waiting sms queues interctions.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/rpc/index.js", "groupTitle": "RPC_Realtime" }, { "type": "post", "url": "/api/integrations/salesforce/accounts", "title": "Creates a new Salesforce Account", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/salesforce/accounts -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateSalesforce_Accounts", "group": "Salesforce_Accounts", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": true, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "username", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "remoteUri", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "password", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "clientId", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "clientSecret", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "securityToken", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "serverUrl", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"integrationTab\"", "\"newTab\"" ], "optional": true, "field": "type", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intSalesforceAccount/index.js", "groupTitle": "Salesforce_Accounts" }, { "type": "delete", "url": "/api/integrations/salesforce/accounts/{id}", "title": "Deletes a Salesforce Account", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/salesforce/accounts/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteSalesforce_Accounts", "group": "Salesforce_Accounts", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intSalesforceAccount/index.js", "groupTitle": "Salesforce_Accounts" }, { "type": "get", "url": "/api/integrations/salesforce/accounts", "title": "Gets a list of Salesforce Accounts", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/salesforce/accounts -v -u {name}:{password}", "type": "json" } ], "name": "GetSalesforce_Accounts", "group": "Salesforce_Accounts", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/integrations/salesforce/accounts?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/integrations/salesforce/accounts?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/integrations/salesforce/accounts?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/integrations/salesforce/accounts?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/integrations/salesforce/accounts?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/intSalesforceAccount/index.js", "groupTitle": "Salesforce_Accounts" }, { "type": "get", "url": "/api/integrations/salesforce/accounts/{id}", "title": "Gets a single Salesforce Account", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/salesforce/accounts/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowSalesforce_Accounts", "group": "Salesforce_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intSalesforceAccount/index.js", "groupTitle": "Salesforce_Accounts" }, { "type": "post", "url": "/api/integrations/salesforce/accounts/{id}/configurations", "title": "Creates new configuration", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/salesforce/accounts/{id}/configurations -d '{\"name\": \"conf1\"}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addConfiguration", "group": "Salesforce_Accounts", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intSalesforceAccount/index.js", "groupTitle": "Salesforce_Accounts" }, { "type": "get", "url": "/api/integrations/salesforce/accounts/{id}/configurations", "title": "Gets account configurations", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/salesforce/accounts/{id}/configurations -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getConfigurations", "group": "Salesforce_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intSalesforceAccount/index.js", "groupTitle": "Salesforce_Accounts" }, { "type": "get", "url": "/api/integrations/salesforce/accounts/{id}/fields", "title": "Gets account fields", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/salesforce/accounts/{id}/fields -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getFields", "group": "Salesforce_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intSalesforceAccount/index.js", "groupTitle": "Salesforce_Accounts" }, { "type": "put", "url": "/api/integrations/salesforce/accounts/{id}", "title": "Update an existing Salesforce Account", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/salesforce/accounts/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateSalesforce_Accounts", "group": "Salesforce_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intSalesforceAccount/index.js", "groupTitle": "Salesforce_Accounts" }, { "type": "post", "url": "/api/integrations/salesforce/configurations", "title": "Creates a new Salesforce Configuration", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/salesforce/configurations -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateSalesforce_Configurations", "group": "Salesforce_Configurations", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": true, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"contact_lead\"", "\"contact\"", "\"lead\"" ], "optional": true, "field": "moduleSearch", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"nothing\"", "\"contact\"", "\"lead\"" ], "optional": true, "field": "moduleCreate", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intSalesforceConfiguration/index.js", "groupTitle": "Salesforce_Configurations" }, { "type": "delete", "url": "/api/integrations/salesforce/configurations/{id}", "title": "Deletes a Salesforce Configuration", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/salesforce/configurations/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteSalesforce_Configurations", "group": "Salesforce_Configurations", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intSalesforceConfiguration/index.js", "groupTitle": "Salesforce_Configurations" }, { "type": "get", "url": "/api/integrations/salesforce/configurations", "title": "Gets a list of Salesforce Configurations", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/salesforce/configurations -v -u {name}:{password}", "type": "json" } ], "name": "GetSalesforce_Configurations", "group": "Salesforce_Configurations", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/integrations/salesforce/configurations?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/integrations/salesforce/configurations?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/integrations/salesforce/configurations?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/integrations/salesforce/configurations?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/integrations/salesforce/configurations?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/intSalesforceConfiguration/index.js", "groupTitle": "Salesforce_Configurations" }, { "type": "get", "url": "/api/integrations/salesforce/configurations/{id}", "title": "Gets a single Salesforce Configuration", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/salesforce/configurations/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowSalesforce_Configurations", "group": "Salesforce_Configurations", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intSalesforceConfiguration/index.js", "groupTitle": "Salesforce_Configurations" }, { "type": "get", "url": "/api/integrations/salesforce/configurations/{id}/descriptions", "title": "Gets configurations descriptions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/salesforce/configurations/{id}/descriptions -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getDescriptions", "group": "Salesforce_Configurations", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intSalesforceConfiguration/index.js", "groupTitle": "Salesforce_Configurations" }, { "type": "get", "url": "/api/integrations/salesforce/configurations/{id}/fields", "title": "Gets configurations fields", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/salesforce/configurations/{id}/fields -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getFields", "group": "Salesforce_Configurations", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intSalesforceConfiguration/index.js", "groupTitle": "Salesforce_Configurations" }, { "type": "get", "url": "/api/integrations/salesforce/configurations/{id}/subjects", "title": "Gets configurations subjects", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/salesforce/configurations/{id}/subjects -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getSubjects", "group": "Salesforce_Configurations", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intSalesforceConfiguration/index.js", "groupTitle": "Salesforce_Configurations" }, { "type": "put", "url": "/api/integrations/salesforce/configurations/{id}", "title": "Update an existing Salesforce Configuration", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/salesforce/configurations/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateSalesforce_Configurations", "group": "Salesforce_Configurations", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intSalesforceConfiguration/index.js", "groupTitle": "Salesforce_Configurations" }, { "type": "post", "url": "/api/integrations/salesforce/fields", "title": "Creates a new Salesforce Field", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/salesforce/fields -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateSalesforce_Fields", "group": "Salesforce_Fields", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "allowedValues": [ "\"string\"", "\"variable\"", "\"customVariable\"", "\"keyValue\"" ], "optional": true, "field": "type", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "content", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "key", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"string\"", "\"variable\"", "\"customVariable\"" ], "optional": true, "field": "keyType", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "keyContent", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "idField", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "variableName", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intSalesforceField/index.js", "groupTitle": "Salesforce_Fields" }, { "type": "delete", "url": "/api/integrations/salesforce/fields/{id}", "title": "Deletes a Salesforce Field", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/salesforce/fields/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteSalesforce_Fields", "group": "Salesforce_Fields", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intSalesforceField/index.js", "groupTitle": "Salesforce_Fields" }, { "type": "get", "url": "/api/integrations/salesforce/fields", "title": "Gets a list of Salesforce Fields", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/salesforce/fields -v -u {name}:{password}", "type": "json" } ], "name": "GetSalesforce_Fields", "group": "Salesforce_Fields", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/integrations/salesforce/fields?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/integrations/salesforce/fields?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/integrations/salesforce/fields?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/integrations/salesforce/fields?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/integrations/salesforce/fields?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/intSalesforceField/index.js", "groupTitle": "Salesforce_Fields" }, { "type": "get", "url": "/api/integrations/salesforce/fields/{id}", "title": "Gets a single Salesforce Field", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/salesforce/fields/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowSalesforce_Fields", "group": "Salesforce_Fields", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intSalesforceField/index.js", "groupTitle": "Salesforce_Fields" }, { "type": "put", "url": "/api/integrations/salesforce/fields/{id}", "title": "Update an existing Salesforce Field", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/salesforce/fields/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateSalesforce_Fields", "group": "Salesforce_Fields", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intSalesforceField/index.js", "groupTitle": "Salesforce_Fields" }, { "type": "post", "url": "/api/schedules", "title": "Creates a new Schedule", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/schedules -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateSchedules", "group": "Schedules", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" }, { "group": "Body", "type": "Boolean", "optional": false, "field": "active", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "cron", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "startAt", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "endAt", "description": "" }, { "group": "Body", "type": "Integer", "optional": false, "field": "subtractNumber", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"years\"", "\"quarters\"", "\"months\"", "\"weeks\"", "\"days\"", "\"hours\"", "\"minutes\"" ], "optional": false, "field": "subtractUnit", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"csv\"", "\"pdf\"", "\"xlsx\"" ], "optional": false, "field": "output", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"custom\"", "\"default\"" ], "optional": false, "field": "type", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "sendMail", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "email", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/schedule/index.js", "groupTitle": "Schedules" }, { "type": "delete", "url": "/api/schedules/{id}", "title": "Deletes a Schedule", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/schedules/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteSchedules", "group": "Schedules", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/schedule/index.js", "groupTitle": "Schedules" }, { "type": "get", "url": "/api/schedules", "title": "Gets a list of Schedules", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/schedules -v -u {name}:{password}", "type": "json" } ], "name": "GetSchedules", "group": "Schedules", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/schedules?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/schedules?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/schedules?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/schedules?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/schedules?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/schedule/index.js", "groupTitle": "Schedules" }, { "type": "get", "url": "/api/schedules/{id}", "title": "Gets a single Schedule", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/schedules/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowSchedules", "group": "Schedules", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/schedule/index.js", "groupTitle": "Schedules" }, { "type": "put", "url": "/api/schedules/{id}", "title": "Update an existing Schedule", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/schedules/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateSchedules", "group": "Schedules", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/schedule/index.js", "groupTitle": "Schedules" }, { "type": "get", "url": "/api/settings", "title": "Gets a list of Settings", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/settings -v -u {name}:{password}", "type": "json" } ], "name": "GetSettings", "group": "Settings", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/settings?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/settings?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/settings?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/settings?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/settings?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/setting/index.js", "groupTitle": "Settings" }, { "type": "get", "url": "/api/settings/{id}", "title": "Gets a single Setting", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/settings/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowSettings", "group": "Settings", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/setting/index.js", "groupTitle": "Settings" }, { "type": "put", "url": "/api/settings/{id}", "title": "Update settings", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/settings/{id} -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "Update", "group": "Settings", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/setting/index.js", "groupTitle": "Settings" }, { "type": "post", "url": "/api/settings/{id}/logo", "title": "Add logo", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/settings/{id}/logo -H 'Content-Type: multipart/form-data' -F 'file=@{filename}' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addLogo", "group": "Settings", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/setting/index.js", "groupTitle": "Settings" }, { "type": "post", "url": "/api/settings/{id}/logo_login", "title": "Add logo login", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/settings/{id}/logo_login -H 'Content-Type: multipart/form-data' -F 'file=@{filename}' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addLogoLogin", "group": "Settings", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/setting/index.js", "groupTitle": "Settings" }, { "type": "get", "url": "/api/settings/{id}/gdpr", "title": "Get gdpr settings", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/settings/{id}/gdpr -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getGdpr", "group": "Settings", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/setting/index.js", "groupTitle": "Settings" }, { "type": "get", "url": "/api/settings/{id}/logo", "title": "Get logo", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/settings/{id}/logo -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getLogo", "group": "Settings", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/setting/index.js", "groupTitle": "Settings" }, { "type": "get", "url": "/api/settings/{id}/logo_login", "title": "Get logo login", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/settings/{id}/logo_login -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getLogoLogin", "group": "Settings", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/setting/index.js", "groupTitle": "Settings" }, { "type": "post", "url": "/api/sms/accounts", "title": "Creates a new Account", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/accounts -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateAccounts", "group": "Sms_Accounts", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "key", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "remote", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "token", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "phone", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"twilio\"", "\"skebby\"", "\"connectel\"", "\"clicksend\"", "\"plivo\"" ], "optional": true, "field": "type", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "accountSid", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "authId", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "authToken", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"basic\"", "\"classic\"", "\"classic+\"" ], "optional": true, "field": "smsMethod", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "username", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "password", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "senderString", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "deliveryReport", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsAccount/index.js", "groupTitle": "Sms_Accounts" }, { "type": "delete", "url": "/api/sms/accounts/{id}", "title": "Deletes a Account", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/accounts/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteAccounts", "group": "Sms_Accounts", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsAccount/index.js", "groupTitle": "Sms_Accounts" }, { "type": "get", "url": "/api/sms/accounts/describe", "title": "Gets table info about Accounts", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/accounts/describe -v -u {name}:{password}", "type": "json" } ], "name": "DescribeAccounts", "group": "Sms_Accounts", "description": "

Motion will return a HTTP status code 200 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsAccount/index.js", "groupTitle": "Sms_Accounts" }, { "type": "get", "url": "/api/sms/accounts", "title": "Gets a list of Accounts", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/accounts -v -u {name}:{password}", "type": "json" } ], "name": "GetAccounts", "group": "Sms_Accounts", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/sms/accounts?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/sms/accounts?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/sms/accounts?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/sms/accounts?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/sms/accounts?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/smsAccount/index.js", "groupTitle": "Sms_Accounts" }, { "type": "delete", "url": "/api/sms/accounts/{id}/canned_answers", "title": "Removes canned answers from account", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/accounts/{id}/canned_answers?ids=1&ids=2 -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "RemoveAnswers", "group": "Sms_Accounts", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsAccount/index.js", "groupTitle": "Sms_Accounts" }, { "type": "get", "url": "/api/sms/accounts/{id}", "title": "Gets a single Account", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/accounts/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowAccounts", "group": "Sms_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsAccount/index.js", "groupTitle": "Sms_Accounts" }, { "type": "put", "url": "/api/sms/messages/{id}/accept", "title": "Accepts message", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/messages/{id}/accept \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "acceptMessage", "group": "Sms_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsMessage/index.js", "groupTitle": "Sms_Accounts" }, { "type": "post", "url": "/api/sms/accounts/{id}/canned_answers", "title": "Creates new canned answer", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/accounts/{id}/canned_answers -d '{\"name\": \"vip\"}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addAnswer", "group": "Sms_Accounts", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "key", "description": "" }, { "group": "Body", "type": "Text", "optional": false, "field": "value", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsAccount/index.js", "groupTitle": "Sms_Accounts" }, { "type": "post", "url": "/api/sms/accounts/{id}/applications", "title": "Creates new applications", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/accounts/{id}/applications -d '[{\"app\": \"queue\", \"...\": \"...\"}]' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addApplications", "group": "Sms_Accounts", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "Integer", "optional": false, "field": "priority", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "app", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "appdata", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "interval", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsAccount/index.js", "groupTitle": "Sms_Accounts" }, { "type": "post", "url": "/api/sms/accounts/{id}/dispositions", "title": "Creates new disposition", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/accounts/{id}/dispositions -d '{\"name\": \"Satisfied\"}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addDisposition", "group": "Sms_Accounts", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "name", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsAccount/index.js", "groupTitle": "Sms_Accounts" }, { "type": "post", "url": "/api/sms/accounts/{id}/dispositions", "title": "Creates many dispositions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/accounts/{id}/dispositions -d '[{\"name\": \"Satisfied\"}]' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addDispositions", "group": "Sms_Accounts", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "name", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsAccount/index.js", "groupTitle": "Sms_Accounts" }, { "type": "get", "url": "/api/sms/accounts/{id}/canned_answers", "title": "Gets account canned answers", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/accounts/{id}/canned_answers -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getAnswers", "group": "Sms_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsAccount/index.js", "groupTitle": "Sms_Accounts" }, { "type": "get", "url": "/api/sms/accounts/{id}/applications", "title": "Gets account applications", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/accounts/{id}/applications -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getApplications", "group": "Sms_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsAccount/index.js", "groupTitle": "Sms_Accounts" }, { "type": "get", "url": "/api/sms/accounts/{id}/dispositions", "title": "Gets account dispositions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/accounts/{id}/dispositions -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getDispositions", "group": "Sms_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsAccount/index.js", "groupTitle": "Sms_Accounts" }, { "type": "get", "url": "/api/sms/accounts/{id}/interactions", "title": "Gets Sms Account interactions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/accounts/{id}/interactions -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getInteractions", "group": "Sms_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsAccount/index.js", "groupTitle": "Sms_Accounts" }, { "type": "post", "url": "/api/sms/accounts/{id}/notify", "title": "Notify new message", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/accounts/{id}/notify -d '{\"body\": \"hello world\", \"...\": \"...\"}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "notify", "group": "Sms_Accounts", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

This API is used to create a new sms message to be sent to the system.

", "version": "0.0.0", "filename": "server/api/smsAccount/index.js", "groupTitle": "Sms_Accounts" }, { "type": "put", "url": "/api/sms/messages/{id}/reject", "title": "Rejects message", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/messages/{id}/reject \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "rejectMessage", "group": "Sms_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsMessage/index.js", "groupTitle": "Sms_Accounts" }, { "type": "post", "url": "/api/sms/accounts/{id}/send", "title": "Send new sms message", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/accounts/{id}/send -d '{from: '+39333123456', body: 'This is a test'}' -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "sendSms", "group": "Sms_Accounts", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsAccount/index.js", "groupTitle": "Sms_Accounts" }, { "type": "post", "url": "/api/sms/accounts/{id}/status", "title": "Receive message status", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/accounts/{id}/status \\ \n -H 'Content-Type: application/json' -v -X POST", "type": "json" } ], "name": "statusMessage", "group": "Sms_Accounts", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsAccount/index.js", "groupTitle": "Sms_Accounts" }, { "type": "post", "url": "/api/sms/messages/{id}/status", "title": "Receive message status", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/messages/{id}/status \\ \n -H 'Content-Type: application/json' -v -X POST", "type": "json" } ], "name": "statusMessage", "group": "Sms_Accounts", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsMessage/index.js", "groupTitle": "Sms_Accounts" }, { "type": "put", "url": "/api/sms/accounts/{id}", "title": "Update an existing Account", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/accounts/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateAccounts", "group": "Sms_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsAccount/index.js", "groupTitle": "Sms_Accounts" }, { "type": "post", "url": "/api/sms/applications", "title": "Creates a new Application", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/applications -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateApplications", "group": "Sms_Applications", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "Integer", "optional": false, "field": "priority", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "app", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "appdata", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "interval", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsApplication/index.js", "groupTitle": "Sms_Applications" }, { "type": "delete", "url": "/api/sms/applications/{id}", "title": "Deletes a Application", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/applications/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteApplications", "group": "Sms_Applications", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsApplication/index.js", "groupTitle": "Sms_Applications" }, { "type": "get", "url": "/api/sms/applications", "title": "Gets a list of Applications", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/applications -v -u {name}:{password}", "type": "json" } ], "name": "GetApplications", "group": "Sms_Applications", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/sms/applications?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/sms/applications?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/sms/applications?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/sms/applications?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/sms/applications?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/smsApplication/index.js", "groupTitle": "Sms_Applications" }, { "type": "get", "url": "/api/sms/applications/{id}", "title": "Gets a single Application", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/applications/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowApplications", "group": "Sms_Applications", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsApplication/index.js", "groupTitle": "Sms_Applications" }, { "type": "put", "url": "/api/sms/applications/{id}", "title": "Update an existing Application", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/applications/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateApplications", "group": "Sms_Applications", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsApplication/index.js", "groupTitle": "Sms_Applications" }, { "type": "post", "url": "/api/sms/dispositions", "title": "Creates a new Disposition", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/dispositions -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateDispositions", "group": "Sms_Dispositions", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "name", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsDisposition/index.js", "groupTitle": "Sms_Dispositions" }, { "type": "delete", "url": "/api/sms/dispositions/{id}", "title": "Deletes a Disposition", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/dispositions/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteDispositions", "group": "Sms_Dispositions", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsDisposition/index.js", "groupTitle": "Sms_Dispositions" }, { "type": "get", "url": "/api/sms/dispositions/{id}", "title": "Gets a single Disposition", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/dispositions/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowDispositions", "group": "Sms_Dispositions", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsDisposition/index.js", "groupTitle": "Sms_Dispositions" }, { "type": "put", "url": "/api/sms/dispositions/{id}", "title": "Update an existing Disposition", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/dispositions/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateDispositions", "group": "Sms_Dispositions", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsDisposition/index.js", "groupTitle": "Sms_Dispositions" }, { "type": "post", "url": "/api/sms/interactions/{id}/tags", "title": "Add tags to the interaction", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/interaction/{id}/tags -d '{\"ids\": [1,2]}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "AddTags", "group": "Sms_Interactions", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsInteraction/index.js", "groupTitle": "Sms_Interactions" }, { "type": "post", "url": "/api/sms/interactions", "title": "Creates a new Interaction", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/interactions -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateInteractions", "group": "Sms_Interactions", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "Boolean", "optional": true, "field": "closed", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "closedAt", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "disposition", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "note", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "phone", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "read1stAt", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"in\"", "\"out\"" ], "optional": false, "field": "firstMsgDirection", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "lastMsgAt", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"in\"", "\"out\"" ], "optional": false, "field": "lastMsgDirection", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsInteraction/index.js", "groupTitle": "Sms_Interactions" }, { "type": "delete", "url": "/api/sms/interactions/{id}", "title": "Deletes a Interaction", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/interactions/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteInteractions", "group": "Sms_Interactions", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsInteraction/index.js", "groupTitle": "Sms_Interactions" }, { "type": "get", "url": "/api/sms/interactions/describe", "title": "Gets table info about Interactions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/interactions/describe -v -u {name}:{password}", "type": "json" } ], "name": "DescribeInteractions", "group": "Sms_Interactions", "description": "

Motion will return a HTTP status code 200 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsInteraction/index.js", "groupTitle": "Sms_Interactions" }, { "type": "get", "url": "/api/sms/interactions", "title": "Gets a list of Interactions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/interactions -v -u {name}:{password}", "type": "json" } ], "name": "GetInteractions", "group": "Sms_Interactions", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/sms/interactions?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/sms/interactions?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/sms/interactions?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/sms/interactions?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/sms/interactions?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/smsInteraction/index.js", "groupTitle": "Sms_Interactions" }, { "type": "delete", "url": "/api/sms/interactions/{id}/tags", "title": "Removes tags from interaction", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/interactions/{id}/tags?ids=1&ids=2 -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "RemoveTags", "group": "Sms_Interactions", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsInteraction/index.js", "groupTitle": "Sms_Interactions" }, { "type": "get", "url": "/api/sms/interactions/{id}", "title": "Gets a single Interaction", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/interactions/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowInteractions", "group": "Sms_Interactions", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsInteraction/index.js", "groupTitle": "Sms_Interactions" }, { "type": "post", "url": "/api/sms/interactions/{id}/messages", "title": "Creates new messages", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/interactions/{id}/messages -d '[{\"to\": \"+3901119886500\", \"...\": \"...\"}]' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addMessage", "group": "Sms_Interactions", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "Text", "optional": false, "field": "body", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "read", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"in\"", "\"out\"" ], "optional": false, "field": "direction", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "messageId", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "phone", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "readAt", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "secret", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsInteraction/index.js", "groupTitle": "Sms_Interactions" }, { "type": "get", "url": "/api/sms/interactions/{id}/messages", "title": "Gets interaction messages", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/interactions/{id}/messages -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getMessages", "group": "Sms_Interactions", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsInteraction/index.js", "groupTitle": "Sms_Interactions" }, { "type": "put", "url": "/api/sms/interactions/{id}", "title": "Update an existing Interaction", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/interactions/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateInteractions", "group": "Sms_Interactions", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsInteraction/index.js", "groupTitle": "Sms_Interactions" }, { "type": "post", "url": "/api/sms/messages", "title": "Creates a new Message", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/messages -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateMessages", "group": "Sms_Messages", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "Text", "optional": false, "field": "body", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "read", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"in\"", "\"out\"" ], "optional": false, "field": "direction", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "messageId", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "phone", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "readAt", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "secret", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsMessage/index.js", "groupTitle": "Sms_Messages" }, { "type": "delete", "url": "/api/sms/messages/{id}", "title": "Deletes a Message", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/messages/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteMessages", "group": "Sms_Messages", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsMessage/index.js", "groupTitle": "Sms_Messages" }, { "type": "get", "url": "/api/sms/messages/describe", "title": "Gets table info about Messages", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/messages/describe -v -u {name}:{password}", "type": "json" } ], "name": "DescribeMessages", "group": "Sms_Messages", "description": "

Motion will return a HTTP status code 200 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsMessage/index.js", "groupTitle": "Sms_Messages" }, { "type": "get", "url": "/api/sms/messages", "title": "Gets a list of Messages", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/messages -v -u {name}:{password}", "type": "json" } ], "name": "GetMessages", "group": "Sms_Messages", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/sms/messages?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/sms/messages?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/sms/messages?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/sms/messages?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/sms/messages?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/smsMessage/index.js", "groupTitle": "Sms_Messages" }, { "type": "get", "url": "/api/sms/messages/{id}", "title": "Gets a single Message", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/messages/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowMessages", "group": "Sms_Messages", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsMessage/index.js", "groupTitle": "Sms_Messages" }, { "type": "put", "url": "/api/sms/messages/{id}", "title": "Update an existing Message", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/messages/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateMessages", "group": "Sms_Messages", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsMessage/index.js", "groupTitle": "Sms_Messages" }, { "type": "post", "url": "/api/sms/reports/queue", "title": "Creates a new Sms Queue Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/reports/queue -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateSms_Queue_Reports", "group": "Sms_Queue_Reports", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "uniqueid", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "from", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "joinAt", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "leaveAt", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "acceptAt", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "exitAt", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "reason", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsQueueReport/index.js", "groupTitle": "Sms_Queue_Reports" }, { "type": "delete", "url": "/api/sms/reports/queue/{id}", "title": "Deletes a Sms Queue Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/reports/queue/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteSms_Queue_Reports", "group": "Sms_Queue_Reports", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsQueueReport/index.js", "groupTitle": "Sms_Queue_Reports" }, { "type": "get", "url": "/api/sms/reports/queue/describe", "title": "Gets table info about Sms Queue Reports", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/reports/queue/describe -v -u {name}:{password}", "type": "json" } ], "name": "DescribeSms_Queue_Reports", "group": "Sms_Queue_Reports", "description": "

Motion will return a HTTP status code 200 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsQueueReport/index.js", "groupTitle": "Sms_Queue_Reports" }, { "type": "get", "url": "/api/sms/reports/queue", "title": "Gets a list of Sms Queue Reports", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/reports/queue -v -u {name}:{password}", "type": "json" } ], "name": "GetSms_Queue_Reports", "group": "Sms_Queue_Reports", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/sms/reports/queue?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/sms/reports/queue?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/sms/reports/queue?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/sms/reports/queue?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/sms/reports/queue?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/smsQueueReport/index.js", "groupTitle": "Sms_Queue_Reports" }, { "type": "get", "url": "/api/sms/reports/queue/{id}", "title": "Gets a single Sms Queue Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/reports/queue/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowSms_Queue_Reports", "group": "Sms_Queue_Reports", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsQueueReport/index.js", "groupTitle": "Sms_Queue_Reports" }, { "type": "put", "url": "/api/sms/reports/queue/{id}", "title": "Update an existing Sms Queue Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/reports/queue/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateSms_Queue_Reports", "group": "Sms_Queue_Reports", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsQueueReport/index.js", "groupTitle": "Sms_Queue_Reports" }, { "type": "post", "url": "/api/sms/queues/{id}/users", "title": "Add agents to a queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/queues/{id}/users -d '{\"ids\": [1,2], \"penalty\": 2}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "AddAgents", "group": "Sms_Queues", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsQueue/index.js", "groupTitle": "Sms_Queues" }, { "type": "post", "url": "/api/sms/queues/{id}/teams", "title": "Add teams to a queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/queues/{id}/teams -d '{\"ids\": [1,2]}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "AddTeams", "group": "Sms_Queues", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsQueue/index.js", "groupTitle": "Sms_Queues" }, { "type": "post", "url": "/api/sms/queues", "title": "Creates a new Queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/queues -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateQueues", "group": "Sms_Queues", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": true, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "timeout", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"rrmemory\"", "\"beepall\"", "\"roundrobin\"" ], "optional": true, "field": "strategy", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsQueue/index.js", "groupTitle": "Sms_Queues" }, { "type": "delete", "url": "/api/sms/queues/{id}", "title": "Deletes a Queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/queues/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteQueues", "group": "Sms_Queues", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsQueue/index.js", "groupTitle": "Sms_Queues" }, { "type": "get", "url": "/api/sms/queues/describe", "title": "Gets table info about Queues", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/queues/describe -v -u {name}:{password}", "type": "json" } ], "name": "DescribeQueues", "group": "Sms_Queues", "description": "

Motion will return a HTTP status code 200 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsQueue/index.js", "groupTitle": "Sms_Queues" }, { "type": "get", "url": "/api/sms/queues/{id}/users", "title": "Gets queue agents", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/queues/{id}/users -v -u {name}:{password} -X POST", "type": "json" } ], "name": "GetAgents", "group": "Sms_Queues", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsQueue/index.js", "groupTitle": "Sms_Queues" }, { "type": "get", "url": "/api/sms/queues/{id}/members", "title": "GetMembers", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/queues/{id}/members -v -u {name}:{password}", "type": "json" } ], "name": "GetMembers", "group": "Sms_Queues", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsQueue/index.js", "groupTitle": "Sms_Queues" }, { "type": "get", "url": "/api/sms/queues", "title": "Gets a list of Queues", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/queues -v -u {name}:{password}", "type": "json" } ], "name": "GetQueues", "group": "Sms_Queues", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/sms/queues?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/sms/queues?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/sms/queues?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/sms/queues?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/sms/queues?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/smsQueue/index.js", "groupTitle": "Sms_Queues" }, { "type": "get", "url": "/api/sms/queues/{id}/teams", "title": "Gets queues list", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/queues/{id}/teams -v -u {name}:{password}", "type": "json" } ], "name": "GetTeams", "group": "Sms_Queues", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsQueue/index.js", "groupTitle": "Sms_Queues" }, { "type": "delete", "url": "/api/sms/queues/{id}/users", "title": "Removes agents from a queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/queues/{id}/users?ids=1&ids=2 -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "RemoveAgents", "group": "Sms_Queues", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsQueue/index.js", "groupTitle": "Sms_Queues" }, { "type": "get", "url": "/api/sms/queues/{id}", "title": "Gets a single Queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/queues/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowQueues", "group": "Sms_Queues", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsQueue/index.js", "groupTitle": "Sms_Queues" }, { "type": "put", "url": "/api/sms/queues/{id}", "title": "Update an existing Queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/queues/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateQueues", "group": "Sms_Queues", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsQueue/index.js", "groupTitle": "Sms_Queues" }, { "type": "get", "url": "/api/sounds", "title": "Gets a list of Sounds", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sounds -v -u {name}:{password}", "type": "json" } ], "name": "GetSounds", "group": "Sounds", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/sounds?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/sounds?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/sounds?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/sounds?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/sounds?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/sound/index.js", "groupTitle": "Sounds" }, { "type": "get", "url": "/api/sounds/{id}", "title": "Gets a single Sound", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sounds/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowSounds", "group": "Sounds", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/sound/index.js", "groupTitle": "Sounds" }, { "type": "post", "url": "/api/sounds", "title": "Create a new sound", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sounds -H 'Content-Type: multipart/form-data' -F 'file=@{filename}' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addSound", "group": "Sounds", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/sound/index.js", "groupTitle": "Sounds" }, { "type": "delete", "url": "/api/sounds/{id}", "title": "Deletes a sound", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sounds/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "destroySound", "group": "Sounds", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/sound/index.js", "groupTitle": "Sounds" }, { "type": "get", "url": "/api/sounds/{id}/download", "title": "Download Sound", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sounds/{id}/download -v -u {name}:{password} -X GET", "type": "json" } ], "name": "download", "group": "Sounds", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/sound/index.js", "groupTitle": "Sounds" }, { "type": "put", "url": "/api/sounds", "title": "Update an existing new sound", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sounds -d '[\"name\": \"sound_name\", \"description\": \"sound_desc\"]' -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateSound", "group": "Sounds", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/sound/index.js", "groupTitle": "Sounds" }, { "type": "post", "url": "/api/square/details/reports", "title": "Creates a new Square Detail Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/square/details/reports -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateSquare_Detail_Reports", "group": "Square_Details_Reports", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": true, "field": "uniqueid", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "node", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "application", "description": "" }, { "group": "Body", "type": "Text", "optional": true, "field": "data", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "project_name", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "callerid", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/squareReportDetail/index.js", "groupTitle": "Square_Details_Reports" }, { "type": "delete", "url": "/api/square/details/reports/{id}", "title": "Deletes a Square Detail Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/square/details/reports/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteSquare_Detail_Reports", "group": "Square_Details_Reports", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/squareReportDetail/index.js", "groupTitle": "Square_Details_Reports" }, { "type": "get", "url": "/api/square/details/reports/describe", "title": "Gets table info about Square Detail Reports", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/square/details/reports/describe -v -u {name}:{password}", "type": "json" } ], "name": "DescribeSquare_Detail_Reports", "group": "Square_Details_Reports", "description": "

Motion will return a HTTP status code 200 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/squareReportDetail/index.js", "groupTitle": "Square_Details_Reports" }, { "type": "get", "url": "/api/square/details/reports", "title": "Gets a list of Square Detail Reports", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/square/details/reports -v -u {name}:{password}", "type": "json" } ], "name": "GetSquare_Detail_Reports", "group": "Square_Details_Reports", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/square/details/reports?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/square/details/reports?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/square/details/reports?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/square/details/reports?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/square/details/reports?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/squareReportDetail/index.js", "groupTitle": "Square_Details_Reports" }, { "type": "get", "url": "/api/square/details/reports/{id}", "title": "Gets a single Square Detail Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/square/details/reports/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowSquare_Detail_Reports", "group": "Square_Details_Reports", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/squareReportDetail/index.js", "groupTitle": "Square_Details_Reports" }, { "type": "put", "url": "/api/square/details/reports/{id}", "title": "Update an existing Square Detail Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/square/details/reports/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateSquare_Detail_Reports", "group": "Square_Details_Reports", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/squareReportDetail/index.js", "groupTitle": "Square_Details_Reports" }, { "type": "post", "url": "/api/square/odbc", "title": "Creates a new ODBC", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/square/odbc -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateODBCs", "group": "Square_ODBC", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "dsn", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/squareOdbc/index.js", "groupTitle": "Square_ODBC" }, { "type": "delete", "url": "/api/square/odbc/{id}", "title": "Deletes a ODBC", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/square/odbc/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteODBCs", "group": "Square_ODBC", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/squareOdbc/index.js", "groupTitle": "Square_ODBC" }, { "type": "get", "url": "/api/square/odbc", "title": "Gets a list of ODBCs", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/square/odbc -v -u {name}:{password}", "type": "json" } ], "name": "GetODBCs", "group": "Square_ODBC", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/square/odbc?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/square/odbc?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/square/odbc?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/square/odbc?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/square/odbc?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/squareOdbc/index.js", "groupTitle": "Square_ODBC" }, { "type": "get", "url": "/api/square/odbc/{id}", "title": "Gets a single ODBC", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/square/odbc/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowODBCs", "group": "Square_ODBC", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/squareOdbc/index.js", "groupTitle": "Square_ODBC" }, { "type": "get", "url": "/api/square/odbc/{id}/test", "title": "Test Odbc", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/square/odbc/{id}/test -v -u {name}:{password} -X GET", "type": "json" } ], "name": "test", "group": "Square_ODBC", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/squareOdbc/index.js", "groupTitle": "Square_ODBC" }, { "type": "put", "url": "/api/square/odbc/{id}", "title": "Update an existing ODBC", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/square/odbc/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateODBCs", "group": "Square_ODBC", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/squareOdbc/index.js", "groupTitle": "Square_ODBC" }, { "type": "post", "url": "/api/square/projects", "title": "Creates a new Project", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/square/projects -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateProjects", "group": "Square_Projects", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" }, { "group": "Body", "type": "Text", "optional": true, "field": "notes", "description": "" }, { "group": "Body", "type": "Blob", "optional": true, "field": "preproduction", "description": "" }, { "group": "Body", "type": "Blob", "optional": true, "field": "production", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/squareProject/index.js", "groupTitle": "Square_Projects" }, { "type": "delete", "url": "/api/square/projects/{id}", "title": "Deletes a Project", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/square/projects/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteProjects", "group": "Square_Projects", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/squareProject/index.js", "groupTitle": "Square_Projects" }, { "type": "get", "url": "/api/square/projects", "title": "Gets a list of Projects", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/square/projects -v -u {name}:{password}", "type": "json" } ], "name": "GetProjects", "group": "Square_Projects", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/square/projects?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/square/projects?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/square/projects?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/square/projects?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/square/projects?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/squareProject/index.js", "groupTitle": "Square_Projects" }, { "type": "get", "url": "/api/square/projects/{id}", "title": "Gets a single Project", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/square/projects/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowProjects", "group": "Square_Projects", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/squareProject/index.js", "groupTitle": "Square_Projects" }, { "type": "put", "url": "/api/square/projects/{id}", "title": "Update an existing Project", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/square/projects/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateProjects", "group": "Square_Projects", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/squareProject/index.js", "groupTitle": "Square_Projects" }, { "type": "post", "url": "/api/square/recordings", "title": "Creates a new Recording", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/square/recordings -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateRecordings", "group": "Square_Recordings", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": true, "field": "uniqueid", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "callerid", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "calleridname", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "context", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "extension", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "priority", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "accountcode", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "dnid", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "projectName", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "saveName", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "filename", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "savePath", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/squareRecording/index.js", "groupTitle": "Square_Recordings" }, { "type": "delete", "url": "/api/square/recordings/{id}", "title": "Deletes a Recording", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/square/recordings/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteRecordings", "group": "Square_Recordings", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/squareRecording/index.js", "groupTitle": "Square_Recordings" }, { "type": "get", "url": "/api/square/recordings", "title": "Gets a list of Recordings", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/square/recordings -v -u {name}:{password}", "type": "json" } ], "name": "GetRecordings", "group": "Square_Recordings", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/square/recordings?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/square/recordings?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/square/recordings?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/square/recordings?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/square/recordings?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/squareRecording/index.js", "groupTitle": "Square_Recordings" }, { "type": "get", "url": "/api/square/recordings/{id}", "title": "Gets a single Recording", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/square/recordings/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowRecordings", "group": "Square_Recordings", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/squareRecording/index.js", "groupTitle": "Square_Recordings" }, { "type": "get", "url": "/api/square/recordings/{id}/download", "title": "Download Recording", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/square/recordings/{id}/download -v -u {name}:{password} -X GET", "type": "json" } ], "name": "download", "group": "Square_Recordings", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/squareRecording/index.js", "groupTitle": "Square_Recordings" }, { "type": "put", "url": "/api/square/recordings/{id}", "title": "Update an existing Recording", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/square/recordings/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateRecordings", "group": "Square_Recordings", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/squareRecording/index.js", "groupTitle": "Square_Recordings" }, { "type": "post", "url": "/api/square/reports", "title": "Creates a new Square Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/square/reports -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateSquare_Reports", "group": "Square_Reports", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": true, "field": "network", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "network_script", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "request", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "channel", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "language", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "type", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "uniqueid", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "version", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "callerid", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "calleridname", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "callingpres", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "callingani2", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "callington", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "callingtns", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "dnid", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "rdnis", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "context", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "extension", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "priority", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "enhanced", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "accountcode", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "threadid", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "project_name", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "joinAt", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "leaveAt", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/squareReport/index.js", "groupTitle": "Square_Reports" }, { "type": "delete", "url": "/api/square/reports/{id}", "title": "Deletes a Square Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/square/reports/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteSquare_Reports", "group": "Square_Reports", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/squareReport/index.js", "groupTitle": "Square_Reports" }, { "type": "get", "url": "/api/square/reports/describe", "title": "Gets table info about Square Reports", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/square/reports/describe -v -u {name}:{password}", "type": "json" } ], "name": "DescribeSquare_Reports", "group": "Square_Reports", "description": "

Motion will return a HTTP status code 200 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/squareReport/index.js", "groupTitle": "Square_Reports" }, { "type": "get", "url": "/api/square/reports", "title": "Gets a list of Square Reports", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/square/reports -v -u {name}:{password}", "type": "json" } ], "name": "GetSquare_Reports", "group": "Square_Reports", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/square/reports?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/square/reports?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/square/reports?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/square/reports?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/square/reports?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/squareReport/index.js", "groupTitle": "Square_Reports" }, { "type": "get", "url": "/api/square/reports/{id}", "title": "Gets a single Square Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/square/reports/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowSquare_Reports", "group": "Square_Reports", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/squareReport/index.js", "groupTitle": "Square_Reports" }, { "type": "put", "url": "/api/square/reports/{id}", "title": "Update an existing Square Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/square/reports/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateSquare_Reports", "group": "Square_Reports", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/squareReport/index.js", "groupTitle": "Square_Reports" }, { "type": "post", "url": "/api/integrations/sugarcrm/configurations", "title": "Creates a new SugarCRM Configuration", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/sugarcrm/configurations -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateSugarCRM_Configurations", "group": "SugarCRM_Configurations", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": true, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intSugarcrmConfiguration/index.js", "groupTitle": "SugarCRM_Configurations" }, { "type": "delete", "url": "/api/integrations/sugarcrm/configurations/{id}", "title": "Deletes a SugarCRM Configuration", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/sugarcrm/configurations/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteSugarCRM_Configurations", "group": "SugarCRM_Configurations", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intSugarcrmConfiguration/index.js", "groupTitle": "SugarCRM_Configurations" }, { "type": "get", "url": "/api/integrations/sugarcrm/configurations", "title": "Gets a list of SugarCRM Configurations", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/sugarcrm/configurations -v -u {name}:{password}", "type": "json" } ], "name": "GetSugarCRM_Configurations", "group": "SugarCRM_Configurations", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/integrations/sugarcrm/configurations?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/integrations/sugarcrm/configurations?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/integrations/sugarcrm/configurations?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/integrations/sugarcrm/configurations?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/integrations/sugarcrm/configurations?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/intSugarcrmConfiguration/index.js", "groupTitle": "SugarCRM_Configurations" }, { "type": "get", "url": "/api/integrations/sugarcrm/configurations/{id}", "title": "Gets a single SugarCRM Configuration", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/sugarcrm/configurations/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowSugarCRM_Configurations", "group": "SugarCRM_Configurations", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intSugarcrmConfiguration/index.js", "groupTitle": "SugarCRM_Configurations" }, { "type": "put", "url": "/api/integrations/sugarcrm/configurations/{id}", "title": "Update an existing SugarCRM Configuration", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/sugarcrm/configurations/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateSugarCRM_Configurations", "group": "SugarCRM_Configurations", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intSugarcrmConfiguration/index.js", "groupTitle": "SugarCRM_Configurations" }, { "type": "post", "url": "/api/integrations/sugarcrm/accounts", "title": "Creates a new Sugarcrm Account", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/sugarcrm/accounts -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateSugarcrm_Accounts", "group": "Sugarcrm_Accounts", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": true, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "username", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "password", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "remoteUri", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "serverUrl", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intSugarcrmAccount/index.js", "groupTitle": "Sugarcrm_Accounts" }, { "type": "delete", "url": "/api/integrations/sugarcrm/accounts/{id}", "title": "Deletes a Sugarcrm Account", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/sugarcrm/accounts/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteSugarcrm_Accounts", "group": "Sugarcrm_Accounts", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intSugarcrmAccount/index.js", "groupTitle": "Sugarcrm_Accounts" }, { "type": "get", "url": "/api/integrations/sugarcrm/accounts", "title": "Gets a list of Sugarcrm Accounts", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/sugarcrm/accounts -v -u {name}:{password}", "type": "json" } ], "name": "GetSugarcrm_Accounts", "group": "Sugarcrm_Accounts", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/integrations/sugarcrm/accounts?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/integrations/sugarcrm/accounts?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/integrations/sugarcrm/accounts?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/integrations/sugarcrm/accounts?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/integrations/sugarcrm/accounts?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/intSugarcrmAccount/index.js", "groupTitle": "Sugarcrm_Accounts" }, { "type": "get", "url": "/api/integrations/sugarcrm/accounts/{id}", "title": "Gets a single Sugarcrm Account", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/sugarcrm/accounts/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowSugarcrm_Accounts", "group": "Sugarcrm_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intSugarcrmAccount/index.js", "groupTitle": "Sugarcrm_Accounts" }, { "type": "post", "url": "/api/integrations/sugarcrm/accounts/{id}/configurations", "title": "Creates new configuration", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/sugarcrm/accounts/{id}/configurations -d '{\"name\": \"conf1\"}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addConfiguration", "group": "Sugarcrm_Accounts", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intSugarcrmAccount/index.js", "groupTitle": "Sugarcrm_Accounts" }, { "type": "get", "url": "/api/integrations/sugarcrm/accounts/{id}/configurations", "title": "Gets account configurations", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/sugarcrm/accounts/{id}/configurations -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getConfigurations", "group": "Sugarcrm_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intSugarcrmAccount/index.js", "groupTitle": "Sugarcrm_Accounts" }, { "type": "get", "url": "/api/integrations/sugarcrm/accounts/{id}/fields", "title": "Gets account fields", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/sugarcrm/accounts/{id}/fields -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getFields", "group": "Sugarcrm_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intSugarcrmAccount/index.js", "groupTitle": "Sugarcrm_Accounts" }, { "type": "put", "url": "/api/integrations/sugarcrm/accounts/{id}", "title": "Update an existing Sugarcrm Account", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/sugarcrm/accounts/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateSugarcrm_Accounts", "group": "Sugarcrm_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intSugarcrmAccount/index.js", "groupTitle": "Sugarcrm_Accounts" }, { "type": "get", "url": "/api/integrations/sugarcrm/configurations/{id}/descriptions", "title": "Gets configurations descriptions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/sugarcrm/configurations/{id}/descriptions -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getDescriptions", "group": "Sugarcrm_Configurations", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intSugarcrmConfiguration/index.js", "groupTitle": "Sugarcrm_Configurations" }, { "type": "get", "url": "/api/integrations/sugarcrm/configurations/{id}/fields", "title": "Gets configurations fields", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/sugarcrm/configurations/{id}/fields -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getFields", "group": "Sugarcrm_Configurations", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intSugarcrmConfiguration/index.js", "groupTitle": "Sugarcrm_Configurations" }, { "type": "get", "url": "/api/integrations/sugarcrm/configurations/{id}/subjects", "title": "Gets configurations subjects", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/sugarcrm/configurations/{id}/subjects -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getSubjects", "group": "Sugarcrm_Configurations", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intSugarcrmConfiguration/index.js", "groupTitle": "Sugarcrm_Configurations" }, { "type": "post", "url": "/api/integrations/sugarcrm/fields", "title": "Creates a new Sugarcrm Field", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/sugarcrm/fields -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateSugarcrm_Fields", "group": "Sugarcrm_Fields", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "allowedValues": [ "\"string\"", "\"variable\"", "\"customVariable\"", "\"keyValue\"" ], "optional": true, "field": "type", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "content", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "key", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"string\"", "\"variable\"", "\"customVariable\"" ], "optional": true, "field": "keyType", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "keyContent", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "idField", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "nameField", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "customField", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "variableName", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intSugarcrmField/index.js", "groupTitle": "Sugarcrm_Fields" }, { "type": "delete", "url": "/api/integrations/sugarcrm/fields/{id}", "title": "Deletes a Sugarcrm Field", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/sugarcrm/fields/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteSugarcrm_Fields", "group": "Sugarcrm_Fields", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intSugarcrmField/index.js", "groupTitle": "Sugarcrm_Fields" }, { "type": "get", "url": "/api/integrations/sugarcrm/fields", "title": "Gets a list of Sugarcrm Fields", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/sugarcrm/fields -v -u {name}:{password}", "type": "json" } ], "name": "GetSugarcrm_Fields", "group": "Sugarcrm_Fields", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/integrations/sugarcrm/fields?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/integrations/sugarcrm/fields?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/integrations/sugarcrm/fields?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/integrations/sugarcrm/fields?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/integrations/sugarcrm/fields?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/intSugarcrmField/index.js", "groupTitle": "Sugarcrm_Fields" }, { "type": "get", "url": "/api/integrations/sugarcrm/fields/{id}", "title": "Gets a single Sugarcrm Field", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/sugarcrm/fields/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowSugarcrm_Fields", "group": "Sugarcrm_Fields", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intSugarcrmField/index.js", "groupTitle": "Sugarcrm_Fields" }, { "type": "put", "url": "/api/integrations/sugarcrm/fields/{id}", "title": "Update an existing Sugarcrm Field", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/sugarcrm/fields/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateSugarcrm_Fields", "group": "Sugarcrm_Fields", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intSugarcrmField/index.js", "groupTitle": "Sugarcrm_Fields" }, { "type": "get", "url": "/api/system/process", "title": "Gets system information", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/system -v -u {name}:{password}", "type": "json" } ], "name": "GetSystemInformation", "group": "System_Information", "description": "

Motion returns the system information.

", "version": "0.0.0", "filename": "server/api/system/index.js", "groupTitle": "System_Information" }, { "type": "get", "url": "/api/system", "title": "Gets system information", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/system -v -u {name}:{password}", "type": "json" } ], "name": "GetSystemInformation", "group": "System_Information", "description": "

Motion returns the system information.

", "version": "0.0.0", "filename": "server/api/system/index.js", "groupTitle": "System_Information" }, { "type": "post", "url": "/api/tags", "title": "Creates a new Tag", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/tags -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateTags", "group": "Tags", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "color", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/tag/index.js", "groupTitle": "Tags" }, { "type": "delete", "url": "/api/tags/{id}", "title": "Deletes a Tag", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/tags/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteTags", "group": "Tags", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/tag/index.js", "groupTitle": "Tags" }, { "type": "get", "url": "/api/tags", "title": "Gets a list of Tags", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/tags -v -u {name}:{password}", "type": "json" } ], "name": "GetTags", "group": "Tags", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/tags?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/tags?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/tags?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/tags?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/tags?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/tag/index.js", "groupTitle": "Tags" }, { "type": "get", "url": "/api/tags/{id}", "title": "Gets a single Tag", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/tags/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowTags", "group": "Tags", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/tag/index.js", "groupTitle": "Tags" }, { "type": "put", "url": "/api/tags/{id}", "title": "Update an existing Tag", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/tags/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateTags", "group": "Tags", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/tag/index.js", "groupTitle": "Tags" }, { "type": "post", "url": "/api/teams/{id}/queues", "title": "Add queues to a team", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/teams/{id}/queues -d '{\"ids\": [1,2]}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "AddQueues", "group": "Teams", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/team/index.js", "groupTitle": "Teams" }, { "type": "post", "url": "/api/teams", "title": "Creates a new Team", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/teams -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateTeams", "group": "Teams", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/team/index.js", "groupTitle": "Teams" }, { "type": "delete", "url": "/api/teams/{id}", "title": "Deletes a Team", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/teams/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteTeams", "group": "Teams", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/team/index.js", "groupTitle": "Teams" }, { "type": "get", "url": "/api/teams/{id}/users", "title": "Gets agents from team", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/teams/{id}/users -v -u {name}:{password} -X GET", "type": "json" } ], "name": "GetAgents", "group": "Teams", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/team/index.js", "groupTitle": "Teams" }, { "type": "get", "url": "/api/teams/{id}/queues?channel={channel}", "title": "Gets Queues list", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/teams/{id}/queues?channel={channel} -v -u {name}:{password}", "type": "json" } ], "name": "GetQueues", "group": "Teams", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/team/index.js", "groupTitle": "Teams" }, { "type": "get", "url": "/api/teams", "title": "Gets a list of Teams", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/teams -v -u {name}:{password}", "type": "json" } ], "name": "GetTeams", "group": "Teams", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/teams?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/teams?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/teams?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/teams?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/teams?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/team/index.js", "groupTitle": "Teams" }, { "type": "delete", "url": "/api/teams/{id}/users", "title": "Removes agents from a team", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/teams/{id}/users?ids=1&ids=2 -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "RemoveAgents", "group": "Teams", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/team/index.js", "groupTitle": "Teams" }, { "type": "delete", "url": "/api/teams/{id}/queues", "title": "Remove queues to a team", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/teams/{id}/queues?channel=voice&ids=1&ids=2 -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "RemoveQueues", "group": "Teams", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/team/index.js", "groupTitle": "Teams" }, { "type": "delete", "url": "/api/sms/queues/{id}/teams", "title": "Remove teams from a queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/queues/{id}/teams -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "RemoveTeams", "group": "Teams", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsQueue/index.js", "groupTitle": "Teams" }, { "type": "delete", "url": "/api/fax/queues/{id}/teams", "title": "Remove teams from a queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/queues/{id}/teams -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "RemoveTeams", "group": "Teams", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxQueue/index.js", "groupTitle": "Teams" }, { "type": "delete", "url": "/api/mail/queues/{id}/teams", "title": "Remove teams from a queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/queues/{id}/teams -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "RemoveTeams", "group": "Teams", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailQueue/index.js", "groupTitle": "Teams" }, { "type": "delete", "url": "/api/openchannel/queues/{id}/teams", "title": "Remove teams from a queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/queues/{id}/teams -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "RemoveTeams", "group": "Teams", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelQueue/index.js", "groupTitle": "Teams" }, { "type": "delete", "url": "/api/chat/queues/{id}/teams", "title": "Remove teams from a queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/queues/{id}/teams -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "RemoveTeams", "group": "Teams", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatQueue/index.js", "groupTitle": "Teams" }, { "type": "delete", "url": "/api/voice/queues/{id}/teams", "title": "Remove teams from a queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/queues/{id}/teams -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "RemoveTeams", "group": "Teams", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceQueue/index.js", "groupTitle": "Teams" }, { "type": "get", "url": "/api/teams/{id}", "title": "Gets a single Team", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/teams/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowTeams", "group": "Teams", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/team/index.js", "groupTitle": "Teams" }, { "type": "post", "url": "/api/teams/{id}/users", "title": "Adds agents to a team", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/teams/{id}/users -d '{\"ids\": [1,2]}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addAgents", "group": "Teams", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/team/index.js", "groupTitle": "Teams" }, { "type": "put", "url": "/api/teams/{id}", "title": "Update an existing Team", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/teams/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateTeams", "group": "Teams", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/team/index.js", "groupTitle": "Teams" }, { "type": "post", "url": "/api/templates", "title": "Creates a new Template", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/templates -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateTemplates", "group": "Templates", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": true, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" }, { "group": "Body", "type": "Text", "optional": true, "field": "html", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/template/index.js", "groupTitle": "Templates" }, { "type": "delete", "url": "/api/templates/{id}", "title": "Deletes a Template", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/templates/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteTemplates", "group": "Templates", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/template/index.js", "groupTitle": "Templates" }, { "type": "get", "url": "/api/templates", "title": "Gets a list of Templates", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/templates -v -u {name}:{password}", "type": "json" } ], "name": "GetTemplates", "group": "Templates", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/templates?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/templates?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/templates?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/templates?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/templates?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/template/index.js", "groupTitle": "Templates" }, { "type": "get", "url": "/api/templates/{id}", "title": "Gets a single Template", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/templates/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowTemplates", "group": "Templates", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/template/index.js", "groupTitle": "Templates" }, { "type": "put", "url": "/api/templates/{id}", "title": "Update an existing Template", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/templates/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateTemplates", "group": "Templates", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/template/index.js", "groupTitle": "Templates" }, { "type": "post", "url": "/api/triggers", "title": "Creates a new Trigger", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/triggers -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateTriggers", "group": "Triggers", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": true, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "channel", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "status", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/trigger/index.js", "groupTitle": "Triggers" }, { "type": "delete", "url": "/api/triggers/{id}", "title": "Deletes a Trigger", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/triggers/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteTriggers", "group": "Triggers", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/trigger/index.js", "groupTitle": "Triggers" }, { "type": "get", "url": "/api/triggers", "title": "Gets a list of Triggers", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/triggers -v -u {name}:{password}", "type": "json" } ], "name": "GetTriggers", "group": "Triggers", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/triggers?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/triggers?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/triggers?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/triggers?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/triggers?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/trigger/index.js", "groupTitle": "Triggers" }, { "type": "get", "url": "/api/triggers/{id}", "title": "Gets a single Trigger", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/triggers/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowTriggers", "group": "Triggers", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/trigger/index.js", "groupTitle": "Triggers" }, { "type": "post", "url": "/api/triggers/{id}/actions", "title": "Creates new actions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/triggers/{id}/actions -d '{\"action\": \"contactManager\",\"data1\": \"1\"}' -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addAction", "group": "Triggers", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "Virtual", "optional": true, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "action", "description": "

Allowed values: contactManager, integration, motionbar, jscripty, urlForward, browser

" }, { "group": "Body", "type": "String", "optional": true, "field": "data1", "description": "

contactManager[ListId], integration[intName(zendesk)], motionbar[Popup(0),URL(1),WinApp(2)], urlForward[GET,POST], browser[TemplateId(0),URL(1)]

" }, { "group": "Body", "type": "String", "optional": true, "field": "data2", "description": "

integration[AccountId], motionbar[TemplateId,URL,WinAppPath], urlForward[URL]

" }, { "group": "Body", "type": "String", "optional": true, "field": "data3", "description": "

motionbar[NULL,NULL,WinAppArguments]

" }, { "group": "Body", "type": "String", "optional": true, "field": "data4", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "data5", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "data6", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/trigger/index.js", "groupTitle": "Triggers" }, { "type": "post", "url": "/api/triggers/{id}/all_conditions", "title": "Creates a new \"AND\"condition", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/triggers/{id}/all_conditions -d '{\"field\": \"name\", \"operator\": \"equal\", \"value\": \"John Doe\"}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addAllCondition", "group": "Triggers", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "Virtual", "optional": true, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "field", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "operator", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "value", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/trigger/index.js", "groupTitle": "Triggers" }, { "type": "post", "url": "/api/triggers/{id}/any_conditions", "title": "Creates a new \"OR\"condition", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/triggers/{id}/any_conditions -d '{\"field\": \"name\", \"operator\": \"equal\", \"value\": \"John Doe\"}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addAnyCondition", "group": "Triggers", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "Virtual", "optional": true, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "field", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "operator", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "value", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/trigger/index.js", "groupTitle": "Triggers" }, { "type": "get", "url": "/api/triggers/{id}/actions", "title": "Gets Trigger Actions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/triggers/{id}/actions -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getActions", "group": "Triggers", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/trigger/index.js", "groupTitle": "Triggers" }, { "type": "get", "url": "/api/triggers/{id}/all_conditions", "title": "Gets \"AND\" Trigger Conditions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/triggers/{id}/all_conditions -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getAllConditions", "group": "Triggers", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/trigger/index.js", "groupTitle": "Triggers" }, { "type": "get", "url": "/api/triggers/{id}/any_conditions", "title": "Gets \"OR\" Trigger Conditions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/triggers/{id}/any_conditions -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getAnyConditions", "group": "Triggers", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/trigger/index.js", "groupTitle": "Triggers" }, { "type": "put", "url": "/api/triggers/{id}", "title": "Update an existing Trigger", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/triggers/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateTriggers", "group": "Triggers", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/trigger/index.js", "groupTitle": "Triggers" }, { "type": "post", "url": "/api/trunks", "title": "Create a new trunk", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/trunks -v -u {name}:{password} -X POST", "type": "json" } ], "name": "Create", "group": "Trunks", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "name", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"friend\"", "\"user\"", "\"peer\"" ], "optional": false, "field": "type", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "context", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"ALLOWED_NOT_SCREENED\"", "\"ALLOWED_PASSED_SCREEN\"", "\"ALLOWED_FAILED_SCREEN\"", "\"ALLOWED\"", "\"PROHIB_NOT_SCREENED\"", "\"PROHIB_PASSED_SCREEN\"", "\"PROHIB_FAILED_SCREEN\"", "\"PROHIB\"" ], "optional": true, "field": "callingpres", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "deny", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "permit", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "secret", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "md5secret", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "remotesecret", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "transport", "description": "

String is deprecated. Please use an Array as ["udp", "tcp"]

" }, { "group": "Body", "type": "String", "allowedValues": [ "\"rfc2833\"", "\"info\"", "\"shortinfo\"", "\"inband\"", "\"auto\"" ], "optional": true, "field": "dtmfmode", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"", "\"nonat\"", "\"update\"", "\"outgoing\"" ], "optional": true, "field": "directmedia", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "directrtpsetup", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "directmediapermit", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "directmediadeny", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "nat", "description": "

String is deprecated. Please use an Array as ["force_rport", "comedia"]

" }, { "group": "Body", "type": "String", "optional": true, "field": "callgroup", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "namedcallgroup", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "pickupgroup", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "namedpickupgroup", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "language", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "tonezone", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "disallow", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "allow", "description": "

String is deprecated. Please use an Array as ["ulaw", "alaw", "alaw"]

" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "autoframing", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "insecure", "description": "

String is deprecated. Please use an Array as ["port", "invite"]

" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "trustrpid", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "trust_id_outbound", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"", "\"never\"" ], "optional": true, "field": "progressinband", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "promiscredir", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "useclientcode", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "accountcode", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "setvar", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "callerid", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "amaflags", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "callcounter", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "busylevel", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "allowoverlap", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "allowsubscribe", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "allowtransfer", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "ignoresdpversion", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "subscribecontext", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "template", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"", "\"always\"" ], "optional": true, "field": "videosupport", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "maxcallbitrate", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "rfc2833compensate", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "mailbox", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"accept\"", "\"refuse\"", "\"originate\"" ], "optional": true, "field": "session_timers", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "session_expires", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "session_minse", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"uac\"", "\"uas\"" ], "optional": true, "field": "session_refresher", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "t38pt_usertpsource", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "regexten", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "fromdomain", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "fromuser", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "port", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "qualify", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "keepalive", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "defaultip", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "defaultuser", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "rtptimeout", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "rtpholdtimeout", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "rtpkeepalive", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"", "\"pai\"" ], "optional": true, "field": "sendrpid", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "outboundproxy", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "callbackextension", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "timert1", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "timerb", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "qualifyfreq", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "contactpermit", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "contactdeny", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "contactacl", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "unsolicited_mailbox", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "use_q850_reason", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "maxforwards", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "encryption", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "avpf", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "force_avp", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "icesupport", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "dtlsenable", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"", "\"fingerprint\"", "\"certificate\"" ], "optional": true, "field": "dtlsverify", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "dtlsrekey", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "dtlscertfile", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "dtlsprivatekey", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "dtlscipher", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "dtlscafile", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "dtlscapath", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"active\"", "\"passive\"", "\"actpass\"" ], "optional": true, "field": "dtlssetup", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "dtlsfingerprint", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "usereqphone", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "recordonfeature", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "recordofffeature", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "call_limit", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "registertrying", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "subscribemwi", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "vmexten", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "mohinterpret", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "mohsuggest", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "parkinglot", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "host", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"", "\"nonat\"", "\"update\"", "\"update,nonat\"" ], "optional": true, "field": "canreinvite", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "registry", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "otherFields", "description": "" }, { "group": "Body", "type": "Boolean", "optional": false, "field": "active", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "t38pt_udptl", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/trunk/index.js", "groupTitle": "Trunks" }, { "type": "delete", "url": "/api/trunks/{id}", "title": "Deletes a trunk", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/trunks/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "Delete", "group": "Trunks", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/trunk/index.js", "groupTitle": "Trunks" }, { "type": "get", "url": "/api/trunks", "title": "Gets a list of Trunks", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/trunks -v -u {name}:{password}", "type": "json" } ], "name": "GetTrunks", "group": "Trunks", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/trunks?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/trunks?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/trunks?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/trunks?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/trunks?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/trunk/index.js", "groupTitle": "Trunks" }, { "type": "get", "url": "/api/trunks/{id}", "title": "Gets a single Trunk", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/trunks/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowTrunks", "group": "Trunks", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/trunk/index.js", "groupTitle": "Trunks" }, { "type": "put", "url": "/api/trunks/{id}", "title": "Update an existing trunk", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/trunks/{id} -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "Update", "group": "Trunks", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/trunk/index.js", "groupTitle": "Trunks" }, { "type": "post", "url": "/api/users/{id}/contacts", "title": "Add contacts to a user", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/users/{id}/contacts -d '{\"ids\": [1,2]}' -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "AddContacts", "group": "Users", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/user/index.js", "groupTitle": "Users" }, { "type": "post", "url": "/api/users/{id}/queues", "title": "Add queues to an agent", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/users/{id}/queues -d '{\"ids\": [1,2], \"penalty\": 2}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "AddQueues", "group": "Users", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/user/index.js", "groupTitle": "Users" }, { "type": "post", "url": "/api/users/{id}/teams", "title": "Add teams to an agent", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/users/{id}/teams -d '{\"ids\": [1,2]}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "AddTeams", "group": "Users", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/user/index.js", "groupTitle": "Users" }, { "type": "post", "url": "/api/users/create_many", "title": "Creates many Users", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/users/create_many -d '[{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}]' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "BulkCreateUsers", "group": "Users", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "name", "description": "

The name of the user

" }, { "group": "Body", "type": "String", "optional": false, "field": "fullname", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "email", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"admin\"", "\"user\"", "\"agent\"", "\"telephone\"" ], "optional": false, "field": "role", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "password", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "provider", "description": "" }, { "group": "Body", "type": "Integer", "optional": false, "field": "internal", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "salt", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "phone", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "mobile", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "address", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "zipcode", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "userpic", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "city", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "country", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "online", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "lastLoginAt", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "voicePause", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "chatPause", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "mailPause", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "faxPause", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "smsPause", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "openchannelPause", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "pauseType", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "lastPauseAt", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "chatCapacity", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "mailCapacity", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "faxCapacity", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "smsCapacity", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "openchannelCapacity", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "phoneBarAutoAnswer", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "phoneBarEnableSettings", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "phoneBarListenPort", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "phoneBarExpires", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "phoneBarRemoteControl", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "phoneBarRemoteControlPort", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "phoneBarEnableRecording", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "phoneBarRingInUse", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "chanspy", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "host", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "ipaddr", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "port", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "regseconds", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "fullcontact", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "regserver", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "useragent", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "lastms", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"friend\"", "\"user\"", "\"peer\"" ], "optional": true, "field": "type", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "context", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"ALLOWED_NOT_SCREENED\"", "\"ALLOWED_PASSED_SCREEN\"", "\"ALLOWED_FAILED_SCREEN\"", "\"ALLOWED\"", "\"PROHIB_NOT_SCREENED\"", "\"PROHIB_PASSED_SCREEN\"", "\"PROHIB_FAILED_SCREEN\"", "\"PROHIB\"" ], "optional": true, "field": "callingpres", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "deny", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "permit", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "secret", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "md5secret", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "remotesecret", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "transport", "description": "

String is deprecated. Please use an Array as ["udp", "tcp"]

" }, { "group": "Body", "type": "String", "allowedValues": [ "\"rfc2833\"", "\"info\"", "\"shortinfo\"", "\"inband\"", "\"auto\"" ], "optional": true, "field": "dtmfmode", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"", "\"nonat\"", "\"update\"", "\"outgoing\"" ], "optional": true, "field": "directmedia", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "directrtpsetup", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "directmediapermit", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "directmediadeny", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "nat", "description": "

String is deprecated. Please use an Array as ["force_rport", "comedia"]

" }, { "group": "Body", "type": "String", "optional": true, "field": "callgroup", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "namedcallgroup", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "pickupgroup", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "namedpickupgroup", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "language", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "tonezone", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "disallow", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "allow", "description": "

String is deprecated. Please use an Array as ["ulaw", "alaw", "gsm"]

" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "autoframing", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "insecure", "description": "

String is deprecated. Please use an Array as ["port", "invite"]

" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "trustrpid", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "trust_id_outbound", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"", "\"never\"" ], "optional": true, "field": "progressinband", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "promiscredir", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "useclientcode", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "accountcode", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "setvar", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "callerid", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "amaflags", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "callcounter", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "busylevel", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "allowoverlap", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "allowsubscribe", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "allowtransfer", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "ignoresdpversion", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "subscribecontext", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "template", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"", "\"always\"" ], "optional": true, "field": "videosupport", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "maxcallbitrate", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "rfc2833compensate", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "mailbox", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"accept\"", "\"refuse\"", "\"originate\"" ], "optional": true, "field": "session_timers", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "session_expires", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "session_minse", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"uac\"", "\"uas\"" ], "optional": true, "field": "session_refresher", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "t38pt_usertpsource", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "regexten", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "fromdomain", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "fromuser", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "qualify", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "keepalive", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "defaultip", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "defaultuser", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "rtptimeout", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "rtpholdtimeout", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "rtpkeepalive", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "sendrpid", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "outboundproxy", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "callbackextension", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "timert1", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "timerb", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "qualifyfreq", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "contactpermit", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "contactdeny", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "contactacl", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "unsolicited_mailbox", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "use_q850_reason", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "maxforwards", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "encryption", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "avpf", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "force_avp", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "icesupport", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "dtlsenable", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"", "\"fingerprint\"", "\"certificate\"" ], "optional": true, "field": "dtlsverify", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "dtlsrekey", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "dtlscertfile", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "dtlsprivatekey", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "dtlscipher", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "dtlscafile", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "dtlscapath", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"active\"", "\"passive\"", "\"actpass\"" ], "optional": true, "field": "dtlssetup", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "dtlsfingerprint", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "usereqphone", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "recordonfeature", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "recordofffeature", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "call_limit", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "registertrying", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "subscribemwi", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "vmexten", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "mohinterpret", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "mohsuggest", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "parkinglot", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"", "\"nonat\"", "\"update\"", "\"update,nonat\"" ], "optional": true, "field": "canreinvite", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "loginInPause", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "resetPasswordToken", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "resetPasswordExpires", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "showWebBar", "description": "" }, { "group": "Body", "type": "Text", "optional": true, "field": "permissions", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "phoneBarUnconditionalNumber", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "phoneBarNoReplyNumber", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "phoneBarBusyNumber", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "phoneBarUnconditional", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "phoneBarNoReply", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "phoneBarBusy", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "phoneBarDnd", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "phoneBarUnansweredCallBadge", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "phoneBarEnableDtmfTone", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "phoneBarAutoAnswerDelay", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "extensionMonitor", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "crudPermissions", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "rtcp_mux", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "allowmessenger", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "phoneBarOutboundProxy", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "passwordResetAt", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/user/index.js", "groupTitle": "Users" }, { "type": "put", "url": "/api/users/{id}/password", "title": "Change user password", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/users/{id}/password -d '{\"oldPassword\": \"1234\", \"newPassword\": \"5678\"}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "ChangePwd", "group": "Users", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/user/index.js", "groupTitle": "Users" }, { "type": "post", "url": "/api/users", "title": "Create a new user", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/users -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "Create", "group": "Users", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/user/index.js", "groupTitle": "Users" }, { "type": "delete", "url": "/api/users/{id}", "title": "Deletes a user", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/users/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "Delete", "group": "Users", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/user/index.js", "groupTitle": "Users" }, { "type": "get", "url": "/api/users/describe", "title": "Gets table info about Users", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/users/describe -v -u {name}:{password}", "type": "json" } ], "name": "DescribeUsers", "group": "Users", "description": "

Motion will return a HTTP status code 200 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/user/index.js", "groupTitle": "Users" }, { "type": "get", "url": "/api/users/{id}/agents", "title": "GetAgents", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/users/{id}/agents -v -u {name}:{password}", "type": "json" } ], "name": "GetAgents", "group": "Users", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/user/index.js", "groupTitle": "Users" }, { "type": "get", "url": "/api/users/{id}/groups", "title": "GetChatGroups", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/users/{id}/groups -v -u {name}:{password}", "type": "json" } ], "name": "GetChatGroups", "group": "Users", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/user/index.js", "groupTitle": "Users" }, { "type": "get", "url": "/api/users/{id}/chat/interactions", "title": "GetChatInteractions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/users/{id}/chat/interactions -v -u {name}:{password}", "type": "json" } ], "name": "GetChatInteractions", "group": "Users", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/user/index.js", "groupTitle": "Users" }, { "type": "get", "url": "/api/users/{id}/contacts", "title": "GetContacts", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/users/{id}/contacts -v -u {name}:{password}", "type": "json" } ], "name": "GetContacts", "group": "Users", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/user/index.js", "groupTitle": "Users" }, { "type": "get", "url": "/api/users/{id}/fax/interactions", "title": "GetFaxInteractions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/users/{id}/fax/interactions -v -u {name}:{password}", "type": "json" } ], "name": "GetFaxInteractions", "group": "Users", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/user/index.js", "groupTitle": "Users" }, { "type": "get", "url": "/api/users/{id}/lists", "title": "GetLists", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/users/{id}/lists -v -u {name}:{password}", "type": "json" } ], "name": "GetLists", "group": "Users", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/user/index.js", "groupTitle": "Users" }, { "type": "get", "url": "/api/users/{id}/mail/interactions", "title": "GetMailInteractions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/users/{id}/mail/interactions -v -u {name}:{password}", "type": "json" } ], "name": "GetMailInteractions", "group": "Users", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/user/index.js", "groupTitle": "Users" }, { "type": "get", "url": "/api/users/{id}/openchannel/interactions", "title": "GetOpenchannelInteractions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/users/{id}/openchannel/interactions -v -u {name}:{password}", "type": "json" } ], "name": "GetOpenchannelInteractions", "group": "Users", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/user/index.js", "groupTitle": "Users" }, { "type": "get", "url": "/api/users/{id}/queues?channel={channel}", "title": "Gets Queues list", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/users/{id}/queues/?channel={channel} -v -u {name}:{password}", "type": "json" } ], "name": "GetQueues", "group": "Users", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/user/index.js", "groupTitle": "Users" }, { "type": "get", "url": "/api/users/{id}/recordings", "title": "GetRecordings", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/users/{id}/recordings -v -u {name}:{password}", "type": "json" } ], "name": "GetRecordings", "group": "Users", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/user/index.js", "groupTitle": "Users" }, { "type": "get", "url": "/api/users/{id}/sms/interactions", "title": "GetSmsInteractions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/users/{id}/sms/interactions -v -u {name}:{password}", "type": "json" } ], "name": "GetSmsInteractions", "group": "Users", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/user/index.js", "groupTitle": "Users" }, { "type": "get", "url": "/api/users/{id}/teams", "title": "GetTeams", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/users/{id}/teams -v -u {name}:{password}", "type": "json" } ], "name": "GetTeams", "group": "Users", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/user/index.js", "groupTitle": "Users" }, { "type": "get", "url": "/api/users", "title": "Gets a list of Users", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/users -v -u {name}:{password}", "type": "json" } ], "name": "GetUsers", "group": "Users", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/users?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/users?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/users?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/users?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/users?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/user/index.js", "groupTitle": "Users" }, { "type": "get", "url": "/api/users/{id}/queues_rt", "title": "GetVoiceQueuesRt", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/users/{id}/queues_rt -v -u {name}:{password}", "type": "json" } ], "name": "GetVoiceQueuesRt", "group": "Users", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/user/index.js", "groupTitle": "Users" }, { "type": "post", "url": "/api/users/{id}/login", "title": "Login", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/users/{id}/login -v -u {name}:{password}", "type": "json" } ], "name": "Login", "group": "Users", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/user/index.js", "groupTitle": "Users" }, { "type": "post", "url": "/api/users/{id}/logout", "title": "Logout", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/users/{id}/logout -v -u {name}:{password}", "type": "json" } ], "name": "Logout", "group": "Users", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/user/index.js", "groupTitle": "Users" }, { "type": "post", "url": "/api/users/{id}/pause", "title": "Pause", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/users/{id}/pause -v -u {name}:{password}", "type": "json" } ], "name": "Pause", "group": "Users", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/user/index.js", "groupTitle": "Users" }, { "type": "delete", "url": "/api/users/{id}/queues", "title": "Remove queues to an agent", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/users/{id}/queues?ids=1&ids=2 -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "RemoveQueues", "group": "Users", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/user/index.js", "groupTitle": "Users" }, { "type": "delete", "url": "/api/users/{id}/teams", "title": "Removes teams from an agent", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/users/{id}/teams?ids=1&ids=2 -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "RemoveTeams", "group": "Users", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/user/index.js", "groupTitle": "Users" }, { "type": "get", "url": "/api/users/{id}", "title": "Gets a single User", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/users/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowUsers", "group": "Users", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/user/index.js", "groupTitle": "Users" }, { "type": "post", "url": "/api/users/{id}/unpause", "title": "Unpause", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/users/{id}/unpause -v -u {name}:{password}", "type": "json" } ], "name": "Unpause", "group": "Users", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/user/index.js", "groupTitle": "Users" }, { "type": "post", "url": "/api/users/{id}/avatar", "title": "Add avatar", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/users/{id}/avatar -H 'Content-Type: multipart/form-data' -F 'file=@{filename}' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addAvatar", "group": "Users", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/user/index.js", "groupTitle": "Users" }, { "type": "get", "url": "/api/users/{id}/avatar", "title": "Get avatar", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/users/{id}/avatar -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getAvatar", "group": "Users", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/user/index.js", "groupTitle": "Users" }, { "type": "put", "url": "/api/users/{id}", "title": "Update an existing User", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/users/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateUsers", "group": "Users", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/user/index.js", "groupTitle": "Users" }, { "type": "post", "url": "/api/variables", "title": "Creates a new Variable", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/variables -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateVariables", "group": "Variables", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/variable/index.js", "groupTitle": "Variables" }, { "type": "delete", "url": "/api/variables/{id}", "title": "Deletes a Variable", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/variables/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteVariables", "group": "Variables", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/variable/index.js", "groupTitle": "Variables" }, { "type": "get", "url": "/api/variables", "title": "Gets a list of Variables", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/variables -v -u {name}:{password}", "type": "json" } ], "name": "GetVariables", "group": "Variables", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/variables?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/variables?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/variables?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/variables?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/variables?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/variable/index.js", "groupTitle": "Variables" }, { "type": "get", "url": "/api/variables/{id}", "title": "Gets a single Variable", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/variables/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowVariables", "group": "Variables", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/variable/index.js", "groupTitle": "Variables" }, { "type": "put", "url": "/api/variables/{id}", "title": "Update an existing Variable", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/variables/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateVariables", "group": "Variables", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/variable/index.js", "groupTitle": "Variables" }, { "type": "get", "url": "/api/version/fetch", "title": "Fetch git version", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/version/fetch -v -u {name}:{password}", "type": "json" } ], "name": "FetchVersion", "group": "Version", "description": "

Motion run the following command: git fetch origin master

", "version": "0.0.0", "filename": "server/api/version/index.js", "groupTitle": "Version" }, { "type": "get", "url": "/api/version", "title": "Gets version", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/version -v -u {name}:{password}", "type": "json" } ], "name": "GetVersion", "group": "Version", "description": "

Motion returns the current and latest motion version.

", "version": "0.0.0", "filename": "server/api/version/index.js", "groupTitle": "Version" }, { "type": "get", "url": "/api/version/migrations", "title": "Launch database migrations", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/version/migrations -v -u {name}:{password}", "type": "json" } ], "name": "MigrateVersion", "group": "Version", "description": "

Motion launch the database migrations, according to the application version

", "version": "0.0.0", "filename": "server/api/version/index.js", "groupTitle": "Version" }, { "type": "get", "url": "/api/version/pull", "title": "Pull git version", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/version/pull -v -u {name}:{password}", "type": "json" } ], "name": "PullVersion", "group": "Version", "description": "

Motion run the following command: git pull

", "version": "0.0.0", "filename": "server/api/version/index.js", "groupTitle": "Version" }, { "type": "get", "url": "/api/version/reset", "title": "Reset git version", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/version/reset -v -u {name}:{password}", "type": "json" } ], "name": "ResetVersion", "group": "Version", "description": "

Motion run the following command: git reset --hard FETCH_HEAD

", "version": "0.0.0", "filename": "server/api/version/index.js", "groupTitle": "Version" }, { "type": "get", "url": "/api/version/restart", "title": "Restart motion2 after update", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/version/restart -v -u {name}:{password}", "type": "json" } ], "name": "RestartVersion", "group": "Version", "description": "

Motion run the following command: pm2 restart motion

", "version": "0.0.0", "filename": "server/api/version/index.js", "groupTitle": "Version" }, { "type": "get", "url": "/api/voice/agents/reports/describe", "title": "Gets table info about Agent Reports", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/agents/reports/describe -v -u {name}:{password}", "type": "json" } ], "name": "DescribeAgent_Reports", "group": "Voice_Agent_Reports", "description": "

Motion will return a HTTP status code 200 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceAgentReport/index.js", "groupTitle": "Voice_Agent_Reports" }, { "type": "get", "url": "/api/voice/agents/reports", "title": "Gets a list of Agent Reports", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/agents/reports -v -u {name}:{password}", "type": "json" } ], "name": "GetAgent_Reports", "group": "Voice_Agent_Reports", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/voice/agents/reports?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/voice/agents/reports?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/voice/agents/reports?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/voice/agents/reports?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/voice/agents/reports?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/voiceAgentReport/index.js", "groupTitle": "Voice_Agent_Reports" }, { "type": "get", "url": "/api/voice/agents/reports/{id}", "title": "Gets a single Agent Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/agents/reports/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowAgent_Reports", "group": "Voice_Agent_Reports", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceAgentReport/index.js", "groupTitle": "Voice_Agent_Reports" }, { "type": "get", "url": "/api/voice/calls/reports/describe", "title": "Gets table info about Call Reports", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/calls/reports/describe -v -u {name}:{password}", "type": "json" } ], "name": "DescribeCall_Reports", "group": "Voice_Call_Reports", "description": "

Motion will return a HTTP status code 200 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceCallReport/index.js", "groupTitle": "Voice_Call_Reports" }, { "type": "get", "url": "/api/voice/calls/reports", "title": "Gets a list of Call Reports", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/calls/reports -v -u {name}:{password}", "type": "json" } ], "name": "GetCall_Reports", "group": "Voice_Call_Reports", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/voice/calls/reports?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/voice/calls/reports?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/voice/calls/reports?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/voice/calls/reports?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/voice/calls/reports?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/voiceCallReport/index.js", "groupTitle": "Voice_Call_Reports" }, { "type": "get", "url": "/api/voice/calls/reports/{id}", "title": "Gets a single Call Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/calls/reports/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowCall_Reports", "group": "Voice_Call_Reports", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceCallReport/index.js", "groupTitle": "Voice_Call_Reports" }, { "type": "put", "url": "/api/voice/calls/reports/{id}", "title": "Update a single cdr", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/calls/reports/{id} -d '{\"userDispositio\": \"OK\"}' -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "update", "group": "Voice_Call_Reports", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceCallReport/index.js", "groupTitle": "Voice_Call_Reports" }, { "type": "post", "url": "/api/voice/chanspy", "title": "Creates a new ChanSpy", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/chanspy -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateChanSpy", "group": "Voice_ChanSpy", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": true, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "prefix", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "options", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "auth", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "password", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "record", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "recordingFormat", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceChanSpy/index.js", "groupTitle": "Voice_ChanSpy" }, { "type": "delete", "url": "/api/voice/chanspy/{id}", "title": "Deletes a ChanSpy", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/chanspy/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteChanSpy", "group": "Voice_ChanSpy", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceChanSpy/index.js", "groupTitle": "Voice_ChanSpy" }, { "type": "get", "url": "/api/voice/chanspy", "title": "Gets a list of ChanSpy", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/chanspy -v -u {name}:{password}", "type": "json" } ], "name": "GetChanSpy", "group": "Voice_ChanSpy", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/voice/chanspy?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/voice/chanspy?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/voice/chanspy?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/voice/chanspy?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/voice/chanspy?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/voiceChanSpy/index.js", "groupTitle": "Voice_ChanSpy" }, { "type": "get", "url": "/api/voice/chanspy/{id}", "title": "Gets a single ChanSpy", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/chanspy/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowChanSpy", "group": "Voice_ChanSpy", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceChanSpy/index.js", "groupTitle": "Voice_ChanSpy" }, { "type": "put", "url": "/api/voice/chanspy/{id}", "title": "Update an existing ChanSpy", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/chanspy/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateChanSpy", "group": "Voice_ChanSpy", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceChanSpy/index.js", "groupTitle": "Voice_ChanSpy" }, { "type": "post", "url": "/api/voice/contexts", "title": "Create a new context", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/contexts -v -u {name}:{password} -X POST", "type": "json" } ], "name": "Create", "group": "Voice_Contexts", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": true, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "defaultEntry", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceContext/index.js", "groupTitle": "Voice_Contexts" }, { "type": "delete", "url": "/api/voice/contexts/{id}", "title": "Deletes a context", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/contexts/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "Delete", "group": "Voice_Contexts", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceContext/index.js", "groupTitle": "Voice_Contexts" }, { "type": "get", "url": "/api/voice/contexts", "title": "Gets a list of Contexts", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/contexts -v -u {name}:{password}", "type": "json" } ], "name": "GetContexts", "group": "Voice_Contexts", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/voice/contexts?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/voice/contexts?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/voice/contexts?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/voice/contexts?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/voice/contexts?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/voiceContext/index.js", "groupTitle": "Voice_Contexts" }, { "type": "get", "url": "/api/voice/contexts/{id}", "title": "Gets a single Context", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/contexts/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowContexts", "group": "Voice_Contexts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceContext/index.js", "groupTitle": "Voice_Contexts" }, { "type": "put", "url": "/api/voice/contexts/{id}", "title": "Update an existing context", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/contexts/{id} -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "Update", "group": "Voice_Contexts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceContext/index.js", "groupTitle": "Voice_Contexts" }, { "type": "get", "url": "/api/voice/dials/reports/describe", "title": "Gets table info about Dial Reports", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/dials/reports/describe -v -u {name}:{password}", "type": "json" } ], "name": "DescribeDial_Reports", "group": "Voice_Dial_Reports", "description": "

Motion will return a HTTP status code 200 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceDialReport/index.js", "groupTitle": "Voice_Dial_Reports" }, { "type": "get", "url": "/api/voice/dials/reports", "title": "Gets a list of Dial Reports", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/dials/reports -v -u {name}:{password}", "type": "json" } ], "name": "GetDial_Reports", "group": "Voice_Dial_Reports", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/voice/dials/reports?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/voice/dials/reports?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/voice/dials/reports?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/voice/dials/reports?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/voice/dials/reports?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/voiceDialReport/index.js", "groupTitle": "Voice_Dial_Reports" }, { "type": "get", "url": "/api/voice/dials/reports/{id}", "title": "Gets a single Dial Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/dials/reports/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowDial_Reports", "group": "Voice_Dial_Reports", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceDialReport/index.js", "groupTitle": "Voice_Dial_Reports" }, { "type": "post", "url": "/api/voice/dispositions", "title": "Creates a new Disposition", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/dispositions -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateDispositions", "group": "Voice_Dispositions", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "name", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceDisposition/index.js", "groupTitle": "Voice_Dispositions" }, { "type": "delete", "url": "/api/voice/dispositions/{id}", "title": "Deletes a Disposition", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/dispositions/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteDispositions", "group": "Voice_Dispositions", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceDisposition/index.js", "groupTitle": "Voice_Dispositions" }, { "type": "get", "url": "/api/voice/dispositions", "title": "Gets a list of Dispositions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/dispositions -v -u {name}:{password}", "type": "json" } ], "name": "GetDispositions", "group": "Voice_Dispositions", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/voice/dispositions?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/voice/dispositions?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/voice/dispositions?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/voice/dispositions?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/voice/dispositions?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/voiceDisposition/index.js", "groupTitle": "Voice_Dispositions" }, { "type": "get", "url": "/api/voice/dispositions/{id}", "title": "Gets a single Disposition", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/dispositions/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowDispositions", "group": "Voice_Dispositions", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceDisposition/index.js", "groupTitle": "Voice_Dispositions" }, { "type": "put", "url": "/api/voice/dispositions/{id}", "title": "Update an existing Disposition", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/dispositions/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateDispositions", "group": "Voice_Dispositions", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceDisposition/index.js", "groupTitle": "Voice_Dispositions" }, { "type": "delete", "url": "/api/voice/extensions/{id}", "title": "Deletes a Extension", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/extensions/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteExtensions", "group": "Voice_Extensions", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceExtension/index.js", "groupTitle": "Voice_Extensions" }, { "type": "get", "url": "/api/voice/extensions", "title": "Gets a list of Extensions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/extensions -v -u {name}:{password}", "type": "json" } ], "name": "GetExtensions", "group": "Voice_Extensions", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/voice/extensions?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/voice/extensions?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/voice/extensions?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/voice/extensions?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/voice/extensions?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/voiceExtension/index.js", "groupTitle": "Voice_Extensions" }, { "type": "get", "url": "/api/voice/extensions/{id}", "title": "Gets a single Extension", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/extensions/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowExtensions", "group": "Voice_Extensions", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceExtension/index.js", "groupTitle": "Voice_Extensions" }, { "type": "post", "url": "/api/voice/extensions", "title": "Create new applications", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/extensions/{id}/applications -d '[{\"app\": \"Set\", \"appdata\": \"CALLERDNID=${CALLER(dnid)}\"}]' -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addApplications", "group": "Voice_Extensions", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceExtension/index.js", "groupTitle": "Voice_Extensions" }, { "type": "post", "url": "/api/voice/extensions", "title": "Create an extension", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/extensions -d '{\"exten\": \"12345\", \"context\": \"from-custom\"}' -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "create", "group": "Voice_Extensions", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceExtension/index.js", "groupTitle": "Voice_Extensions" }, { "type": "put", "url": "/api/voice/extensions/{id}", "title": "Update an extension", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/extensions/{id} -d '{\"exten\": \"12345\", \"context\": \"from-custom\"}' -H 'Content-Type: application/json' -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "update", "group": "Voice_Extensions", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceExtension/index.js", "groupTitle": "Voice_Extensions" }, { "type": "post", "url": "/api/voice/mohs", "title": "Create a new a new MOH", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/mohs -d '{\"name\": \"xmas_musics\"}' -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "AddMoh", "group": "Voice_MOHs", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceMusicOnHold/index.js", "groupTitle": "Voice_MOHs" }, { "type": "post", "url": "/api/voice/mohs/{id}/sounds", "title": "Add sound to MOH", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/mohs/{id}/sounds -d '{\"id\": 1}' -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "AddSound", "group": "Voice_MOHs", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceMusicOnHold/index.js", "groupTitle": "Voice_MOHs" }, { "type": "delete", "url": "/api/voice/mohs/{id}", "title": "Deletes an MOH", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/mohs/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DestroyMoh", "group": "Voice_MOHs", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceMusicOnHold/index.js", "groupTitle": "Voice_MOHs" }, { "type": "get", "url": "/api/voice/mohs", "title": "Gets a list of Music On Holds", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/mohs -v -u {name}:{password}", "type": "json" } ], "name": "GetMusic_On_Holds", "group": "Voice_MOHs", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/voice/mohs?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/voice/mohs?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/voice/mohs?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/voice/mohs?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/voice/mohs?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/voiceMusicOnHold/index.js", "groupTitle": "Voice_MOHs" }, { "type": "get", "url": "/api/voice/mohs/{id}/sounds", "title": "Gets sounds from MOH", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/mohs/{id}/sounds -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "GetSounds", "group": "Voice_MOHs", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceMusicOnHold/index.js", "groupTitle": "Voice_MOHs" }, { "type": "delete", "url": "/api/voice/mohs/{id}/sounds/{id2}", "title": "Remove sound from MOH", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/mohs/{id}/sounds/{id2} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "RemoveSound", "group": "Voice_MOHs", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceMusicOnHold/index.js", "groupTitle": "Voice_MOHs" }, { "type": "get", "url": "/api/voice/mohs/{id}", "title": "Gets a single Music On Hold", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/mohs/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowMusic_On_Holds", "group": "Voice_MOHs", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceMusicOnHold/index.js", "groupTitle": "Voice_MOHs" }, { "type": "put", "url": "/api/voice/mohs/{id}", "title": "Update an existing Music On Hold", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/mohs/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateMusic_On_Holds", "group": "Voice_MOHs", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceMusicOnHold/index.js", "groupTitle": "Voice_MOHs" }, { "type": "post", "url": "/api/voice/mails", "title": "Creates a new Mail", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/mails -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateMails", "group": "Voice_Mails", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": true, "field": "customer_id", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "context", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "mailbox", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "password", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "fullname", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "email", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "pager", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "tz", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": false, "field": "attach", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": false, "field": "saycid", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "dialout", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "callback", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": false, "field": "review", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": false, "field": "operator", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": false, "field": "envelope", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": false, "field": "sayduration", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "saydurationm", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": false, "field": "sendvoicemail", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": false, "field": "delete", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": false, "field": "nextaftercmd", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": false, "field": "forcename", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": false, "field": "forcegreetings", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": false, "field": "hidefromdir", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "stamp", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "emailsubject", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "emailbody", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "name", "description": "" }, { "group": "Body", "type": "Integer", "optional": false, "field": "maxsecs", "description": "" }, { "group": "Body", "type": "Integer", "optional": false, "field": "maxmsg", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceMail/index.js", "groupTitle": "Voice_Mails" }, { "type": "delete", "url": "/api/voice/mails/{id}", "title": "Deletes a Mail", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/mails/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteMails", "group": "Voice_Mails", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceMail/index.js", "groupTitle": "Voice_Mails" }, { "type": "get", "url": "/api/voice/mails", "title": "Gets a list of Mails", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/mails -v -u {name}:{password}", "type": "json" } ], "name": "GetMails", "group": "Voice_Mails", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/voice/mails?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/voice/mails?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/voice/mails?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/voice/mails?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/voice/mails?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/voiceMail/index.js", "groupTitle": "Voice_Mails" }, { "type": "get", "url": "/api/voice/mails/{id}", "title": "Gets a single Mail", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/mails/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowMails", "group": "Voice_Mails", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceMail/index.js", "groupTitle": "Voice_Mails" }, { "type": "get", "url": "/api/voice/mails/{id}/messages", "title": "Gets voice mail messages", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/mails/{id}/messages -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getMessages", "group": "Voice_Mails", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceMail/index.js", "groupTitle": "Voice_Mails" }, { "type": "put", "url": "/api/voice/mails/{id}", "title": "Update an existing Mail", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/mails/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateMails", "group": "Voice_Mails", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceMail/index.js", "groupTitle": "Voice_Mails" }, { "type": "post", "url": "/api/voice/mails/messages", "title": "Creates a new Message", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/mails/messages -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateMessages", "group": "Voice_Messages", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "Virtual", "optional": true, "field": "name", "description": "" }, { "group": "Body", "type": "Integer", "optional": false, "field": "msgnum", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "dir", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "context", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "macrocontext", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "callerid", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "origtime", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "duration", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "mailboxuser", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "mailboxcontext", "description": "" }, { "group": "Body", "type": "Blob", "optional": true, "field": "recording", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "flag", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "msg_id", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "stamp", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceMailMessage/index.js", "groupTitle": "Voice_Messages" }, { "type": "delete", "url": "/api/voice/mails/messages/{id}", "title": "Deletes a Message", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/mails/messages/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteMessages", "group": "Voice_Messages", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceMailMessage/index.js", "groupTitle": "Voice_Messages" }, { "type": "get", "url": "/api/voice/mails/messages", "title": "Gets a list of Messages", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/mails/messages -v -u {name}:{password}", "type": "json" } ], "name": "GetMessages", "group": "Voice_Messages", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/voice/mails/messages?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/voice/mails/messages?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/voice/mails/messages?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/voice/mails/messages?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/voice/mails/messages?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/voiceMailMessage/index.js", "groupTitle": "Voice_Messages" }, { "type": "get", "url": "/api/voice/mails/messages/{id}", "title": "Gets a single Message", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/mails/messages/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowMessages", "group": "Voice_Messages", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceMailMessage/index.js", "groupTitle": "Voice_Messages" }, { "type": "get", "url": "voice/mails/messages/{id}/download", "title": "Download Voice Message", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}voice/mails/messages/{id}/download -v -u {name}:{password} -X GET", "type": "json" } ], "name": "download", "group": "Voice_Messages", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceMailMessage/index.js", "groupTitle": "Voice_Messages" }, { "type": "put", "url": "/api/voice/mails/messages/{id}", "title": "Update an existing Message", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/mails/messages/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateMessages", "group": "Voice_Messages", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceMailMessage/index.js", "groupTitle": "Voice_Messages" }, { "type": "get", "url": "/api/voice/queues/reports/describe", "title": "Gets table info about Queue Reports", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/queues/reports/describe -v -u {name}:{password}", "type": "json" } ], "name": "DescribeQueue_Reports", "group": "Voice_Queue_Reports", "description": "

Motion will return a HTTP status code 200 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceQueueReport/index.js", "groupTitle": "Voice_Queue_Reports" }, { "type": "get", "url": "/api/voice/queues/reports", "title": "Gets a list of Queue Reports", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/queues/reports -v -u {name}:{password}", "type": "json" } ], "name": "GetQueue_Reports", "group": "Voice_Queue_Reports", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/voice/queues/reports?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/voice/queues/reports?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/voice/queues/reports?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/voice/queues/reports?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/voice/queues/reports?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/voiceQueueReport/index.js", "groupTitle": "Voice_Queue_Reports" }, { "type": "get", "url": "/api/voice/queues/reports/{id}", "title": "Gets a single Queue Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/queues/reports/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowQueue_Reports", "group": "Voice_Queue_Reports", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceQueueReport/index.js", "groupTitle": "Voice_Queue_Reports" }, { "type": "post", "url": "/api/voice/queues/{id}/users", "title": "Add agents to queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/queues/{id}/users -d '{\"ids\": [1,2], \"penalty\": 2}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "AddAgents", "group": "Voice_Queues", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceQueue/index.js", "groupTitle": "Voice_Queues" }, { "type": "post", "url": "/api/voice/queues/{id}/blacklists", "title": "Add blacklists to a queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/queues/{id}/blacklists -d '{\"ids\": [1,2]}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "AddBlackLists", "group": "Voice_Queues", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceQueue/index.js", "groupTitle": "Voice_Queues" }, { "type": "post", "url": "/api/voice/queues/{id}/lists", "title": "Add lists to a queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/queues/{id}/lists -d '{\"ids\": [1,2]}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "AddLists", "group": "Voice_Queues", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceQueue/index.js", "groupTitle": "Voice_Queues" }, { "type": "post", "url": "/api/voice/queues/{id}/teams", "title": "Add teams to queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/queues/{id}/teams -d '{\"ids\": [1,2]}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "AddTeams", "group": "Voice_Queues", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceQueue/index.js", "groupTitle": "Voice_Queues" }, { "type": "post", "url": "/api/voice/queues", "title": "Creates a new Queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/queues -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateQueues", "group": "Voice_Queues", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "name", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"inbound\"", "\"outbound\"" ], "optional": false, "field": "type", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "musiconhold", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "announce", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"ringall\"", "\"leastrecent\"", "\"fewestcalls\"", "\"random\"", "\"rrmemory\"", "\"linear\"", "\"wrandom\"", "\"rrordered\"" ], "optional": false, "field": "strategy", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "servicelevel", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "context", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "penaltymemberslimit", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "timeout", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "retry", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "timeoutpriority", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "weight", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "wrapuptime", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "autofill", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"", "\"all\"" ], "optional": true, "field": "autopause", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "autopausedelay", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "autopausebusy", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "autopauseunavail", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "maxlen", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "setinterfacevar", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "setqueueentryvar", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "setqueuevar", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "eventmemberstatus", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "membermacro", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "membergosub", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "announce_frequency", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "min_announce_frequency", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "periodic_announce_frequency", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "random_periodic_announce", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "relative_periodic_announce", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"", "\"once\"" ], "optional": true, "field": "announce_holdtime", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "announce_position", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "announce_to_first_user", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "announce_position_limit", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"0\"", "\"5\"", "\"10\"", "\"15\"", "\"20\"", "\"30\"" ], "optional": true, "field": "announce_round_seconds", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "monitor_format", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "monitor_type", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "queue_youarenext", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "queue_thereare", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "queue_callswaiting", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "queue_holdtime", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "queue_minute", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "queue_minutes", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "queue_seconds", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "queue_thankyou", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "queue_reporthold", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "queue_quantity1", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "queue_quantity2", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "queue_periodic_announce", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "queue_less_than", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "periodic_announce", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "joinempty", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "leavewhenempty", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "reportholdtime", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "ringinuse", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "memberdelay", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "timeoutrestart", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "defaultrule", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "acw", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "acwTimeout", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "dialActive", "description": "

Active/Disactive Campaign

" }, { "group": "Body", "type": "String", "allowedValues": [ "\"preview\"", "\"progressive\"", "\"power\"", "\"predictive\"", "\"booked\"" ], "optional": true, "field": "dialMethod", "description": "

Dial Method.

" }, { "group": "Body", "type": "Integer", "optional": true, "field": "dialLimitChannel", "description": "

Max 9999 channels, 0 means unlimited.

" }, { "group": "Body", "type": "Integer", "optional": true, "field": "dialLimitQueue", "description": "

Max 9999 member in queue(min:1, max:9999), 0 means unlimited.

" }, { "group": "Body", "type": "Float", "optional": true, "field": "dialPowerLevel", "description": "

Power Level: Calls for agents (min:1, max:10).

" }, { "group": "Body", "type": "String", "allowedValues": [ "\"agentBusyFactor\"", "\"dropRate\"" ], "optional": true, "field": "dialPredictiveOptimization", "description": "

Only for predictive method.

" }, { "group": "Body", "type": "Float", "optional": true, "field": "dialPredictiveOptimizationPercentage", "description": "

Predictive Optimization Percentage (min: 1, max: 95)

" }, { "group": "Body", "type": "Integer", "optional": true, "field": "dialPredictiveInterval", "description": "

Interval Predictive Minutes (min:5 max:30)

" }, { "group": "Body", "type": "String", "optional": true, "field": "dialOriginateCallerIdName", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "dialOriginateCallerIdNumber", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "dialOriginateTimeout", "description": "

Originate Timeout Seconds (min:1, max:999)

" }, { "group": "Body", "type": "String", "optional": true, "field": "dialQueueOptions", "description": "

https://wiki.asterisk.org/wiki/display/AST/Asterisk+13+Application_Queue

" }, { "group": "Body", "type": "Integer", "optional": true, "field": "dialQueueTimeout", "description": "

Queue Timeout Seconds (min:1, max:999)

" }, { "group": "Body", "type": "String", "optional": true, "field": "dialQueueProject", "description": "

AGI queue option (use: agi://127.0.0.1/square,<project_name>)

" }, { "group": "Body", "type": "Integer", "optional": true, "field": "dialCongestionMaxRetry", "description": "

#Congestion Retry (min:1, max:999)

" }, { "group": "Body", "type": "Integer", "optional": true, "field": "dialCongestionRetryFrequency", "description": "

Congestion Retry Frequency Minutes (min:1, max:99999)

" }, { "group": "Body", "type": "Integer", "optional": true, "field": "dialBusyMaxRetry", "description": "

#Busy Retry (min:1, max:999)

" }, { "group": "Body", "type": "Integer", "optional": true, "field": "dialBusyRetryFrequency", "description": "

Busy Retry Frequency Minutes (min:1, max:99999)

" }, { "group": "Body", "type": "Integer", "optional": true, "field": "dialNoAnswerMaxRetry", "description": "

#NoAnswer Retry (min:1, max:999)

" }, { "group": "Body", "type": "Integer", "optional": true, "field": "dialNoAnswerRetryFrequency", "description": "

NoAnswer Retry Frequency Minutes (min:1, max:99999)

" }, { "group": "Body", "type": "Integer", "optional": true, "field": "dialGlobalMaxRetry", "description": "

#Global Max Retry (min:1, max:999)

" }, { "group": "Body", "type": "String", "optional": true, "field": "dialTimezone", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "dialGlobalInterval", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "dialPrefix", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"always\"", "\"never\"", "\"onlyIfOpen\"" ], "optional": true, "field": "dialCheckDuplicateType", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "dialAMDActive", "description": "

Active/Disactive AMD

" }, { "group": "Body", "type": "Integer", "optional": true, "field": "dialAMDInitialSilence", "description": "

#AMD Initial Silence

" }, { "group": "Body", "type": "Integer", "optional": true, "field": "dialAMDGreeting", "description": "

#AMD Greeting

" }, { "group": "Body", "type": "Integer", "optional": true, "field": "dialAMDAfterGreetingSilence", "description": "

#AMD After Greeting Silence

" }, { "group": "Body", "type": "Integer", "optional": true, "field": "dialAMDTotalAnalysisTime", "description": "

#AMD Total Analysis Time

" }, { "group": "Body", "type": "Integer", "optional": true, "field": "dialAMDMinWordLength", "description": "

#AMD Min Word Length

" }, { "group": "Body", "type": "Integer", "optional": true, "field": "dialAMDBetweenWordsSilence", "description": "

#AMD Between Words Silence

" }, { "group": "Body", "type": "Integer", "optional": true, "field": "dialAMDMaximumNumberOfWords", "description": "

#AMD Maximum Number Of Words

" }, { "group": "Body", "type": "Integer", "optional": true, "field": "dialAMDSilenceThreshold", "description": "

#AMD Silence Threshold (min:0, max:32767)

" }, { "group": "Body", "type": "Integer", "optional": true, "field": "dialAMDMaximumWordLength", "description": "

#AMD Maximum Word Length

" }, { "group": "Body", "type": "Integer", "optional": true, "field": "dialRecallMeTimeout", "description": "

#RecallMe Timeout (min:1)

" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "dialRecallInQueue", "description": "

Active/Disactive Recall In Queue

" }, { "group": "Body", "type": "String", "allowedValues": [ "\"DESC\"", "\"ASC\"" ], "optional": true, "field": "dialOrderByScheduledAt", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "dialQueueProject2", "description": "

AGI queue option (use: agi://127.0.0.1/square,<project_name>)

" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "dialAgiAfterHangupClient", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "dialAgiAfterHangupAgent", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceQueue/index.js", "groupTitle": "Voice_Queues" }, { "type": "delete", "url": "/api/voice/queues/{id}", "title": "Deletes a Queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/queues/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteQueues", "group": "Voice_Queues", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceQueue/index.js", "groupTitle": "Voice_Queues" }, { "type": "get", "url": "/api/voice/queues/{id}/users", "title": "Gets queue agents", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/queues/{id}/users -v -u {name}:{password} -X GET", "type": "json" } ], "name": "GetAgents", "group": "Voice_Queues", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceQueue/index.js", "groupTitle": "Voice_Queues" }, { "type": "get", "url": "/api/voice/queues/{id}/blacklists", "title": "Get queue blacklists", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/queues/{id}/blacklists -v -u {name}:{password} -X GET", "type": "json" } ], "name": "GetBlackLists", "group": "Voice_Queues", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceQueue/index.js", "groupTitle": "Voice_Queues" }, { "type": "get", "url": "/api/voice/queues/{id}/finals", "title": "Gets queue hopper finals", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/queues/{id}/hopper_finals -v -u {name}:{password} -X GET", "type": "json" } ], "name": "GetHopperFinals", "group": "Voice_Queues", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceQueue/index.js", "groupTitle": "Voice_Queues" }, { "type": "get", "url": "/api/voice/queues/{id}/hopper_histories", "title": "Gets queue hopper histories", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/queues/{id}/hopper_histories -v -u {name}:{password} -X GET", "type": "json" } ], "name": "GetHopperHistories", "group": "Voice_Queues", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceQueue/index.js", "groupTitle": "Voice_Queues" }, { "type": "get", "url": "/api/voice/queues/{id}/hoppers", "title": "Gets queue hoppers", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/queues/{id}/hoppers -v -u {name}:{password} -X GET", "type": "json" } ], "name": "GetHoppers", "group": "Voice_Queues", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceQueue/index.js", "groupTitle": "Voice_Queues" }, { "type": "get", "url": "/api/voice/queues/{id}/lists", "title": "Get queue lists", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/queues/{id}/lists -v -u {name}:{password} -X GET", "type": "json" } ], "name": "GetLists", "group": "Voice_Queues", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceQueue/index.js", "groupTitle": "Voice_Queues" }, { "type": "get", "url": "/api/voice/queues/{id}/members", "title": "Gets queue members", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/queues/{id}/members -v -u {name}:{password} -X GET", "type": "json" } ], "name": "GetMembers", "group": "Voice_Queues", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceQueue/index.js", "groupTitle": "Voice_Queues" }, { "type": "get", "url": "/api/voice/queues", "title": "Gets a list of Queues", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/queues -v -u {name}:{password}", "type": "json" } ], "name": "GetQueues", "group": "Voice_Queues", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/voice/queues?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/voice/queues?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/voice/queues?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/voice/queues?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/voice/queues?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/voiceQueue/index.js", "groupTitle": "Voice_Queues" }, { "type": "get", "url": "/api/voice/queues/{id}/teams", "title": "Gets queue team", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/queues/{id}/teams -v -u {name}:{password} -X GET", "type": "json" } ], "name": "GetTeams", "group": "Voice_Queues", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceQueue/index.js", "groupTitle": "Voice_Queues" }, { "type": "delete", "url": "/api/voice/queues/{id}/users", "title": "Removes agents from a queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/queues/{id}/users?ids=1&ids=2 -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "RemoveAgents", "group": "Voice_Queues", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceQueue/index.js", "groupTitle": "Voice_Queues" }, { "type": "delete", "url": "/api/voice/queues/{id}/blacklists", "title": "Remove blacklists from a queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/queues/{id}/blacklists?ids=1&ids=2 -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "RemoveBlackLists", "group": "Voice_Queues", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceQueue/index.js", "groupTitle": "Voice_Queues" }, { "type": "delete", "url": "/api/voice/queues/{id}/lists", "title": "Remove lists from a queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/queues/{id}/lists?ids=1&ids=2 -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "RemoveLists", "group": "Voice_Queues", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceQueue/index.js", "groupTitle": "Voice_Queues" }, { "type": "get", "url": "/api/voice/queues/{id}", "title": "Gets a single Queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/queues/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowQueues", "group": "Voice_Queues", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceQueue/index.js", "groupTitle": "Voice_Queues" }, { "type": "get", "url": "/api/voice/queues/{id}/blacks", "title": "Gets queue hopper blacks", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/queues/{id}/hopper_black -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getHopperBlacks", "group": "Voice_Queues", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceQueue/index.js", "groupTitle": "Voice_Queues" }, { "type": "put", "url": "/api/voice/queues/{id}", "title": "Update an existing Queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/queues/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateQueues", "group": "Voice_Queues", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceQueue/index.js", "groupTitle": "Voice_Queues" }, { "type": "post", "url": "/api/voice/recordings", "title": "Creates a new Recording", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/recordings -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateRecordings", "group": "Voice_Recordings", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "Virtual", "optional": true, "field": "format", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "uniqueid", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "channel", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "membername", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "calleridnum", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "calleridname", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "connectedlinenum", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "connectedlinename", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "accountcode", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "context", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "exten", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "value", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "type", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "rating", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "queue", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "userDisposition", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "createdAt", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "updatedAt", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceRecording/index.js", "groupTitle": "Voice_Recordings" }, { "type": "delete", "url": "/api/voice/recordings/{id}", "title": "Deletes a Recording", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/recordings/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteRecordings", "group": "Voice_Recordings", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceRecording/index.js", "groupTitle": "Voice_Recordings" }, { "type": "get", "url": "/api/voice/recordings/describe", "title": "Gets table info about Recordings", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/recordings/describe -v -u {name}:{password}", "type": "json" } ], "name": "DescribeRecordings", "group": "Voice_Recordings", "description": "

Motion will return a HTTP status code 200 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceRecording/index.js", "groupTitle": "Voice_Recordings" }, { "type": "get", "url": "/api/voice/recordings", "title": "Gets a list of Recordings", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/recordings -v -u {name}:{password}", "type": "json" } ], "name": "GetRecordings", "group": "Voice_Recordings", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/voice/recordings?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/voice/recordings?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/voice/recordings?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/voice/recordings?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/voice/recordings?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/voiceRecording/index.js", "groupTitle": "Voice_Recordings" }, { "type": "get", "url": "/api/voice/recordings/{id}", "title": "Gets a single Recording", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/recordings/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowRecordings", "group": "Voice_Recordings", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceRecording/index.js", "groupTitle": "Voice_Recordings" }, { "type": "get", "url": "/api/voice/recordings/{id}/download", "title": "Download Recording", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/recordings/{id}/download -v -u {name}:{password} -X GET", "type": "json" } ], "name": "download", "group": "Voice_Recordings", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceRecording/index.js", "groupTitle": "Voice_Recordings" }, { "type": "put", "url": "/api/voice/recordings/{id}", "title": "Update an existing Recording", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/recordings/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateRecordings", "group": "Voice_Recordings", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceRecording/index.js", "groupTitle": "Voice_Recordings" }, { "type": "post", "url": "/api/voice/transfers/reports", "title": "Creates a new Transfer Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/transfers/reports -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateTransfer_Reports", "group": "Voice_Transfer_Reports", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "allowedValues": [ "\"blind\"", "\"attended\"" ], "optional": true, "field": "type", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "result", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "transfererchannel", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "transferercalleridnum", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "transferercalleridname", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "transfererconnectedlinenum", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "transfererconnectedlinename", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "transfereraccountcode", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "transferercontext", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "transfererexten", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "transfererlinkedid", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "transfereechannel", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "transfereecalleridnum", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "transfereecalleridname", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "transfereeconnectedlinenum", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "transfereeconnectedlinename", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "transfereeaccountcode", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "transfereecontext", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "transfereeexten", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "transfereelinkedid", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"Yes\"", "\"No\"" ], "optional": true, "field": "isexternal", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "context", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "extension", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceTransferReport/index.js", "groupTitle": "Voice_Transfer_Reports" }, { "type": "delete", "url": "/api/voice/transfers/reports/{id}", "title": "Deletes a Transfer Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/transfers/reports/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteTransfer_Reports", "group": "Voice_Transfer_Reports", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceTransferReport/index.js", "groupTitle": "Voice_Transfer_Reports" }, { "type": "get", "url": "/api/voice/transfers/reports", "title": "Gets a list of Transfer Reports", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/transfers/reports -v -u {name}:{password}", "type": "json" } ], "name": "GetTransfer_Reports", "group": "Voice_Transfer_Reports", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/voice/transfers/reports?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/voice/transfers/reports?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/voice/transfers/reports?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/voice/transfers/reports?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/voice/transfers/reports?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/voiceTransferReport/index.js", "groupTitle": "Voice_Transfer_Reports" }, { "type": "get", "url": "/api/voice/transfers/reports/{id}", "title": "Gets a single Transfer Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/transfers/reports/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowTransfer_Reports", "group": "Voice_Transfer_Reports", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceTransferReport/index.js", "groupTitle": "Voice_Transfer_Reports" }, { "type": "put", "url": "/api/voice/transfers/reports/{id}", "title": "Update an existing Transfer Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/transfers/reports/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateTransfer_Reports", "group": "Voice_Transfer_Reports", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceTransferReport/index.js", "groupTitle": "Voice_Transfer_Reports" }, { "type": "post", "url": "/api/integrations/zendesk/accounts", "title": "Creates a new Zendesk Account", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/zendesk/accounts -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateZendesk_Accounts", "group": "Zendesk_Accounts", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": true, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "username", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "password", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "token", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "remoteUri", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"password\"", "\"token\"" ], "optional": true, "field": "authType", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "serverUrl", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"integrationTab\"", "\"newTab\"" ], "optional": true, "field": "type", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intZendeskAccount/index.js", "groupTitle": "Zendesk_Accounts" }, { "type": "delete", "url": "/api/integrations/zendesk/accounts/{id}", "title": "Deletes a Zendesk Account", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/zendesk/accounts/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteZendesk_Accounts", "group": "Zendesk_Accounts", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intZendeskAccount/index.js", "groupTitle": "Zendesk_Accounts" }, { "type": "get", "url": "/api/integrations/zendesk/accounts", "title": "Gets a list of Zendesk Accounts", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/zendesk/accounts -v -u {name}:{password}", "type": "json" } ], "name": "GetZendesk_Accounts", "group": "Zendesk_Accounts", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/integrations/zendesk/accounts?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/integrations/zendesk/accounts?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/integrations/zendesk/accounts?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/integrations/zendesk/accounts?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/integrations/zendesk/accounts?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/intZendeskAccount/index.js", "groupTitle": "Zendesk_Accounts" }, { "type": "get", "url": "/api/integrations/zendesk/accounts/{id}", "title": "Gets a single Zendesk Account", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/zendesk/accounts/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowZendesk_Accounts", "group": "Zendesk_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intZendeskAccount/index.js", "groupTitle": "Zendesk_Accounts" }, { "type": "post", "url": "/api/integrations/zendesk/accounts/{id}/configurations", "title": "Creates new configuration", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/zendesk/accounts/{id}/configurations -d '{\"name\": \"conf1\"}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addConfiguration", "group": "Zendesk_Accounts", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intZendeskAccount/index.js", "groupTitle": "Zendesk_Accounts" }, { "type": "get", "url": "/api/integrations/zendesk/accounts/{id}/configurations", "title": "Gets account configurations", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/zendesk/accounts/{id}/configurations -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getConfigurations", "group": "Zendesk_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intZendeskAccount/index.js", "groupTitle": "Zendesk_Accounts" }, { "type": "get", "url": "/api/integrations/zendesk/accounts/{id}/fields", "title": "Gets account fields", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/zendesk/accounts/{id}/fields -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getFields", "group": "Zendesk_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intZendeskAccount/index.js", "groupTitle": "Zendesk_Accounts" }, { "type": "put", "url": "/api/integrations/zendesk/accounts/{id}", "title": "Update an existing Zendesk Account", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/zendesk/accounts/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateZendesk_Accounts", "group": "Zendesk_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intZendeskAccount/index.js", "groupTitle": "Zendesk_Accounts" }, { "type": "post", "url": "/api/integrations/zendesk/configurations", "title": "Creates a new Zendesk Configuration", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/zendesk/configurations -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateZendesk_Configurations", "group": "Zendesk_Configurations", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": true, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intZendeskConfiguration/index.js", "groupTitle": "Zendesk_Configurations" }, { "type": "delete", "url": "/api/integrations/zendesk/configurations/{id}", "title": "Deletes a Zendesk Configuration", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/zendesk/configurations/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteZendesk_Configurations", "group": "Zendesk_Configurations", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intZendeskConfiguration/index.js", "groupTitle": "Zendesk_Configurations" }, { "type": "get", "url": "/api/integrations/zendesk/configurations", "title": "Gets a list of Zendesk Configurations", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/zendesk/configurations -v -u {name}:{password}", "type": "json" } ], "name": "GetZendesk_Configurations", "group": "Zendesk_Configurations", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/integrations/zendesk/configurations?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/integrations/zendesk/configurations?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/integrations/zendesk/configurations?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/integrations/zendesk/configurations?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/integrations/zendesk/configurations?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/intZendeskConfiguration/index.js", "groupTitle": "Zendesk_Configurations" }, { "type": "get", "url": "/api/integrations/zendesk/configurations/{id}", "title": "Gets a single Zendesk Configuration", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/zendesk/configurations/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowZendesk_Configurations", "group": "Zendesk_Configurations", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intZendeskConfiguration/index.js", "groupTitle": "Zendesk_Configurations" }, { "type": "get", "url": "/api/integrations/zendesk/configurations/{id}/descriptions", "title": "Gets configurations descriptions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/zendesk/configurations/{id}/descriptions -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getDescriptions", "group": "Zendesk_Configurations", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intZendeskConfiguration/index.js", "groupTitle": "Zendesk_Configurations" }, { "type": "get", "url": "/api/integrations/zendesk/configurations/{id}/fields", "title": "Gets configurations fields", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/zendesk/configurations/{id}/fields -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getFields", "group": "Zendesk_Configurations", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intZendeskConfiguration/index.js", "groupTitle": "Zendesk_Configurations" }, { "type": "get", "url": "/api/integrations/zendesk/configurations/{id}/subjects", "title": "Gets configurations subjects", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/zendesk/configurations/{id}/subjects -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getSubjects", "group": "Zendesk_Configurations", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intZendeskConfiguration/index.js", "groupTitle": "Zendesk_Configurations" }, { "type": "get", "url": "/api/integrations/zendesk/configurations/{id}/tags", "title": "Gets configurations tags", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/zendesk/configurations/{id}/tags -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getTags", "group": "Zendesk_Configurations", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intZendeskConfiguration/index.js", "groupTitle": "Zendesk_Configurations" }, { "type": "post", "url": "/api/integrations/zendesk/configurations/{id}/tags", "title": "Sets new tags", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/zendesk/configurations/{id}/tags -d '{\"ids\": [1,12]}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "setTags", "group": "Zendesk_Configurations", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intZendeskConfiguration/index.js", "groupTitle": "Zendesk_Configurations" }, { "type": "put", "url": "/api/integrations/zendesk/configurations/{id}", "title": "Update an existing Zendesk Configuration", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/zendesk/configurations/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateZendesk_Configurations", "group": "Zendesk_Configurations", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intZendeskConfiguration/index.js", "groupTitle": "Zendesk_Configurations" }, { "type": "post", "url": "/api/integrations/zendesk/fields", "title": "Creates a new Zendesk Field", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/zendesk/fields -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateZendesk_Fields", "group": "Zendesk_Fields", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "allowedValues": [ "\"string\"", "\"variable\"", "\"customVariable\"", "\"keyValue\"" ], "optional": true, "field": "type", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "content", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "key", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"string\"", "\"variable\"", "\"customVariable\"" ], "optional": true, "field": "keyType", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "keyContent", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "idField", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "nameField", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "customField", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "variableName", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intZendeskField/index.js", "groupTitle": "Zendesk_Fields" }, { "type": "delete", "url": "/api/integrations/zendesk/fields/{id}", "title": "Deletes a Zendesk Field", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/zendesk/fields/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteZendesk_Fields", "group": "Zendesk_Fields", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intZendeskField/index.js", "groupTitle": "Zendesk_Fields" }, { "type": "get", "url": "/api/integrations/zendesk/fields", "title": "Gets a list of Zendesk Fields", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/zendesk/fields -v -u {name}:{password}", "type": "json" } ], "name": "GetZendesk_Fields", "group": "Zendesk_Fields", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/integrations/zendesk/fields?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/integrations/zendesk/fields?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/integrations/zendesk/fields?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/integrations/zendesk/fields?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/integrations/zendesk/fields?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/intZendeskField/index.js", "groupTitle": "Zendesk_Fields" }, { "type": "get", "url": "/api/integrations/zendesk/fields/{id}", "title": "Gets a single Zendesk Field", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/zendesk/fields/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowZendesk_Fields", "group": "Zendesk_Fields", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intZendeskField/index.js", "groupTitle": "Zendesk_Fields" }, { "type": "put", "url": "/api/integrations/zendesk/fields/{id}", "title": "Update an existing Zendesk Field", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/zendesk/fields/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateZendesk_Fields", "group": "Zendesk_Fields", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intZendeskField/index.js", "groupTitle": "Zendesk_Fields" }, { "type": "post", "url": "/api/integrations/zoho/accounts", "title": "Creates a new Zoho Account", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/zoho/accounts -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateZoho_Accounts", "group": "Zoho_Accounts", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": true, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "authToken", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "host", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "serverUrl", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intZohoAccount/index.js", "groupTitle": "Zoho_Accounts" }, { "type": "delete", "url": "/api/integrations/zoho/accounts/{id}", "title": "Deletes a Zoho Account", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/zoho/accounts/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteZoho_Accounts", "group": "Zoho_Accounts", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intZohoAccount/index.js", "groupTitle": "Zoho_Accounts" }, { "type": "get", "url": "/api/integrations/zoho/accounts", "title": "Gets a list of Zoho Accounts", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/zoho/accounts -v -u {name}:{password}", "type": "json" } ], "name": "GetZoho_Accounts", "group": "Zoho_Accounts", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/integrations/zoho/accounts?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/integrations/zoho/accounts?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/integrations/zoho/accounts?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/integrations/zoho/accounts?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/integrations/zoho/accounts?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/intZohoAccount/index.js", "groupTitle": "Zoho_Accounts" }, { "type": "get", "url": "/api/integrations/zoho/accounts/{id}", "title": "Gets a single Zoho Account", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/zoho/accounts/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowZoho_Accounts", "group": "Zoho_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intZohoAccount/index.js", "groupTitle": "Zoho_Accounts" }, { "type": "post", "url": "/api/integrations/zoho/accounts/{id}/configurations", "title": "Creates new configuration", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/zoho/accounts/{id}/configurations -d '{\"name\": \"conf1\"}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addConfiguration", "group": "Zoho_Accounts", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intZohoAccount/index.js", "groupTitle": "Zoho_Accounts" }, { "type": "get", "url": "/api/integrations/zoho/accounts/{id}/configurations", "title": "Gets account configurations", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/zoho/accounts/{id}/configurations -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getConfigurations", "group": "Zoho_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intZohoAccount/index.js", "groupTitle": "Zoho_Accounts" }, { "type": "get", "url": "/api/integrations/zoho/accounts/{id}/fields", "title": "Gets account fields", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/zoho/accounts/{id}/fields -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getFields", "group": "Zoho_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intZohoAccount/index.js", "groupTitle": "Zoho_Accounts" }, { "type": "put", "url": "/api/integrations/zoho/accounts/{id}", "title": "Update an existing Zoho Account", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/zoho/accounts/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateZoho_Accounts", "group": "Zoho_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intZohoAccount/index.js", "groupTitle": "Zoho_Accounts" }, { "type": "post", "url": "/api/integrations/zoho/configurations", "title": "Creates a new Zoho Configuration", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/zoho/configurations -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateZoho_Configurations", "group": "Zoho_Configurations", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": true, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intZohoConfiguration/index.js", "groupTitle": "Zoho_Configurations" }, { "type": "delete", "url": "/api/integrations/zoho/configurations/{id}", "title": "Deletes a Zoho Configuration", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/zoho/configurations/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteZoho_Configurations", "group": "Zoho_Configurations", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intZohoConfiguration/index.js", "groupTitle": "Zoho_Configurations" }, { "type": "get", "url": "/api/integrations/zoho/configurations", "title": "Gets a list of Zoho Configurations", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/zoho/configurations -v -u {name}:{password}", "type": "json" } ], "name": "GetZoho_Configurations", "group": "Zoho_Configurations", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/integrations/zoho/configurations?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/integrations/zoho/configurations?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/integrations/zoho/configurations?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/integrations/zoho/configurations?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/integrations/zoho/configurations?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/intZohoConfiguration/index.js", "groupTitle": "Zoho_Configurations" }, { "type": "get", "url": "/api/integrations/zoho/configurations/{id}", "title": "Gets a single Zoho Configuration", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/zoho/configurations/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowZoho_Configurations", "group": "Zoho_Configurations", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intZohoConfiguration/index.js", "groupTitle": "Zoho_Configurations" }, { "type": "get", "url": "/api/integrations/zoho/configurations/{id}/descriptions", "title": "Gets configurations descriptions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/zoho/configurations/{id}/descriptions -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getDescriptions", "group": "Zoho_Configurations", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intZohoConfiguration/index.js", "groupTitle": "Zoho_Configurations" }, { "type": "get", "url": "/api/integrations/zoho/configurations/{id}/fields", "title": "Gets configurations fields", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/zoho/configurations/{id}/fields -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getFields", "group": "Zoho_Configurations", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intZohoConfiguration/index.js", "groupTitle": "Zoho_Configurations" }, { "type": "get", "url": "/api/integrations/zoho/configurations/{id}/subjects", "title": "Gets configurations subjects", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/zoho/configurations/{id}/subjects -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getSubjects", "group": "Zoho_Configurations", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intZohoConfiguration/index.js", "groupTitle": "Zoho_Configurations" }, { "type": "put", "url": "/api/integrations/zoho/configurations/{id}", "title": "Update an existing Zoho Configuration", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/zoho/configurations/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateZoho_Configurations", "group": "Zoho_Configurations", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intZohoConfiguration/index.js", "groupTitle": "Zoho_Configurations" }, { "type": "post", "url": "/api/integrations/zoho/fields", "title": "Creates a new Zoho Field", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/zoho/fields -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateZoho_Fields", "group": "Zoho_Fields", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "allowedValues": [ "\"string\"", "\"variable\"", "\"customVariable\"", "\"keyValue\"" ], "optional": true, "field": "type", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "content", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "key", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"string\"", "\"variable\"", "\"customVariable\"" ], "optional": true, "field": "keyType", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "keyContent", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "idField", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "nameField", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "customField", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "variableName", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intZohoField/index.js", "groupTitle": "Zoho_Fields" }, { "type": "delete", "url": "/api/integrations/zoho/fields/{id}", "title": "Deletes a Zoho Field", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/zoho/fields/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteZoho_Fields", "group": "Zoho_Fields", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intZohoField/index.js", "groupTitle": "Zoho_Fields" }, { "type": "get", "url": "/api/integrations/zoho/fields", "title": "Gets a list of Zoho Fields", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/zoho/fields -v -u {name}:{password}", "type": "json" } ], "name": "GetZoho_Fields", "group": "Zoho_Fields", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/integrations/zoho/fields?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/integrations/zoho/fields?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/integrations/zoho/fields?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/integrations/zoho/fields?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/integrations/zoho/fields?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/intZohoField/index.js", "groupTitle": "Zoho_Fields" }, { "type": "get", "url": "/api/integrations/zoho/fields/{id}", "title": "Gets a single Zoho Field", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/zoho/fields/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowZoho_Fields", "group": "Zoho_Fields", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intZohoField/index.js", "groupTitle": "Zoho_Fields" }, { "type": "put", "url": "/api/integrations/zoho/fields/{id}", "title": "Update an existing Zoho Field", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/zoho/fields/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateZoho_Fields", "group": "Zoho_Fields", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intZohoField/index.js", "groupTitle": "Zoho_Fields" }, { "type": "post", "url": "/api/cdr", "title": "Creates a new Cdr", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cdr -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateCdrs", "group": "cdr", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "calldate", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "clid", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "src", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "dst", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "dcontext", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "channel", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "dstchannel", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "lastapp", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "lastdata", "description": "" }, { "group": "Body", "type": "Integer", "optional": false, "field": "duration", "description": "" }, { "group": "Body", "type": "Integer", "optional": false, "field": "billsec", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "disposition", "description": "" }, { "group": "Body", "type": "Integer", "optional": false, "field": "amaflags", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "accountcode", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "userfield", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "uniqueid", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "linkedid", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "sequence", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "peeraccount", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "type", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "tag", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cdr/index.js", "groupTitle": "cdr" }, { "type": "delete", "url": "/api/cdr/{id}", "title": "Deletes a Cdr", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cdr/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteCdrs", "group": "cdr", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cdr/index.js", "groupTitle": "cdr" }, { "type": "get", "url": "/api/cdr", "title": "Gets a list of Cdrs", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cdr -v -u {name}:{password}", "type": "json" } ], "name": "GetCdrs", "group": "cdr", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/cdr?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/cdr?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/cdr?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/cdr?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/cdr?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/cdr/index.js", "groupTitle": "cdr" }, { "type": "get", "url": "/api/cdr/{id}", "title": "Gets a single Cdr", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cdr/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowCdrs", "group": "cdr", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cdr/index.js", "groupTitle": "cdr" }, { "type": "put", "url": "/api/cdr/{id}", "title": "Update an existing Cdr", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cdr/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateCdrs", "group": "cdr", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cdr/index.js", "groupTitle": "cdr" }, { "type": "post", "url": "/api/voiceQueuesLog", "title": "Creates a new VoiceQueuesLog", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voiceQueuesLog -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateVoiceQueuesLogs", "group": "voiceQueuesLog", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": true, "field": "time", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "callid", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "queuename", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "agent", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "event", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "data1", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "data2", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "data3", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "data4", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "data5", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "dtm", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceQueuesLog/index.js", "groupTitle": "voiceQueuesLog" }, { "type": "delete", "url": "/api/voiceQueuesLog/{id}", "title": "Deletes a VoiceQueuesLog", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voiceQueuesLog/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteVoiceQueuesLogs", "group": "voiceQueuesLog", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceQueuesLog/index.js", "groupTitle": "voiceQueuesLog" }, { "type": "get", "url": "/api/voiceQueuesLog", "title": "Gets a list of VoiceQueuesLogs", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voiceQueuesLog -v -u {name}:{password}", "type": "json" } ], "name": "GetVoiceQueuesLogs", "group": "voiceQueuesLog", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/voiceQueuesLog?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/voiceQueuesLog?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/voiceQueuesLog?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/voiceQueuesLog?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/voiceQueuesLog?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/voiceQueuesLog/index.js", "groupTitle": "voiceQueuesLog" }, { "type": "get", "url": "/api/voiceQueuesLog/{id}", "title": "Gets a single VoiceQueuesLog", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voiceQueuesLog/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowVoiceQueuesLogs", "group": "voiceQueuesLog", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceQueuesLog/index.js", "groupTitle": "voiceQueuesLog" }, { "type": "put", "url": "/api/voiceQueuesLog/{id}", "title": "Update an existing VoiceQueuesLog", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voiceQueuesLog/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateVoiceQueuesLogs", "group": "voiceQueuesLog", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceQueuesLog/index.js", "groupTitle": "voiceQueuesLog" } ] }); diff --git a/apidoc/api_data.json b/apidoc/api_data.json index a39010c..385da8f 100644 --- a/apidoc/api_data.json +++ b/apidoc/api_data.json @@ -1 +1 @@ -[ { "type": "delete", "url": "/api/actions/{id}", "title": "Deletes a Action", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/actions/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteActions", "group": "Actions", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/action/index.js", "groupTitle": "Actions" }, { "type": "put", "url": "/api/actions/{id}", "title": "Update an existing Action", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/actions/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateActions", "group": "Actions", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/action/index.js", "groupTitle": "Actions" }, { "type": "post", "url": "/api/analytics/custom_reports", "title": "Creates a new Analytic Custom Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/analytics/custom_reports -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateAnalytic_Custom_Reports", "group": "Analytic_Custom_Reports", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "parent", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "table", "description": "" }, { "group": "Body", "type": "Text", "optional": true, "field": "conditions", "description": "" }, { "group": "Body", "type": "Text", "optional": true, "field": "joins", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/analyticCustomReport/index.js", "groupTitle": "Analytic_Custom_Reports" }, { "type": "delete", "url": "/api/analytics/custom_reports/{id}", "title": "Deletes a Analytic Custom Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/analytics/custom_reports/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteAnalytic_Custom_Reports", "group": "Analytic_Custom_Reports", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/analyticCustomReport/index.js", "groupTitle": "Analytic_Custom_Reports" }, { "type": "get", "url": "/api/analytics/custom_reports", "title": "Gets a list of Analytic Custom Reports", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/analytics/custom_reports -v -u {name}:{password}", "type": "json" } ], "name": "GetAnalytic_Custom_Reports", "group": "Analytic_Custom_Reports", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/analytics/custom_reports?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/analytics/custom_reports?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/analytics/custom_reports?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/analytics/custom_reports?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/analytics/custom_reports?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/analyticCustomReport/index.js", "groupTitle": "Analytic_Custom_Reports" }, { "type": "get", "url": "/api/analytics/custom_reports/{id}", "title": "Gets a single Analytic Custom Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/analytics/custom_reports/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowAnalytic_Custom_Reports", "group": "Analytic_Custom_Reports", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/analyticCustomReport/index.js", "groupTitle": "Analytic_Custom_Reports" }, { "type": "get", "url": "/api/analytics/custom_reports/{id}/preview", "title": "Report Preview", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/analytics/custom_reports/{id}/preview -v -u {name}:{password} -X GET", "type": "json" } ], "name": "preview", "group": "Analytic_Custom_Reports", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/analyticCustomReport/index.js", "groupTitle": "Analytic_Custom_Reports" }, { "type": "get", "url": "/api/analytics/custom_reports/{id}/query", "title": "Report Query SQL", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/analytics/custom_reports/{id}/query -v -u {name}:{password} -X GET", "type": "json" } ], "name": "query", "group": "Analytic_Custom_Reports", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/analyticCustomReport/index.js", "groupTitle": "Analytic_Custom_Reports" }, { "type": "get", "url": "/api/analytics/custom_reports/{id}/run", "title": "Report Run", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/analytics/custom_reports/{id}/run -v -u {name}:{password} -X GET", "type": "json" } ], "name": "run", "group": "Analytic_Custom_Reports", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/analyticCustomReport/index.js", "groupTitle": "Analytic_Custom_Reports" }, { "type": "put", "url": "/api/analytics/custom_reports/{id}", "title": "Update an existing Analytic Custom Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/analytics/custom_reports/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateAnalytic_Custom_Reports", "group": "Analytic_Custom_Reports", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/analyticCustomReport/index.js", "groupTitle": "Analytic_Custom_Reports" }, { "type": "post", "url": "/api/analytics/default_reports", "title": "Creates a new Analytic Default Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/analytics/default_reports -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateAnalytic_Default_Reports", "group": "Analytic_Default_Reports", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "parent", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "table", "description": "" }, { "group": "Body", "type": "Text", "optional": true, "field": "conditions", "description": "" }, { "group": "Body", "type": "Text", "optional": true, "field": "joins", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/analyticDefaultReport/index.js", "groupTitle": "Analytic_Default_Reports" }, { "type": "delete", "url": "/api/analytics/default_reports/{id}", "title": "Deletes a Analytic Default Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/analytics/default_reports/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteAnalytic_Default_Reports", "group": "Analytic_Default_Reports", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/analyticDefaultReport/index.js", "groupTitle": "Analytic_Default_Reports" }, { "type": "get", "url": "/api/analytics/default_reports", "title": "Gets a list of Analytic Default Reports", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/analytics/default_reports -v -u {name}:{password}", "type": "json" } ], "name": "GetAnalytic_Default_Reports", "group": "Analytic_Default_Reports", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/analytics/default_reports?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/analytics/default_reports?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/analytics/default_reports?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/analytics/default_reports?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/analytics/default_reports?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/analyticDefaultReport/index.js", "groupTitle": "Analytic_Default_Reports" }, { "type": "get", "url": "/api/analytics/default_reports/{id}", "title": "Gets a single Analytic Default Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/analytics/default_reports/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowAnalytic_Default_Reports", "group": "Analytic_Default_Reports", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/analyticDefaultReport/index.js", "groupTitle": "Analytic_Default_Reports" }, { "type": "get", "url": "/api/analytics/default_reports/{id}/preview", "title": "Report Preview", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/analytics/default_reports/{id}/preview -v -u {name}:{password} -X GET", "type": "json" } ], "name": "preview", "group": "Analytic_Default_Reports", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/analyticDefaultReport/index.js", "groupTitle": "Analytic_Default_Reports" }, { "type": "get", "url": "/api/analytics/default_reports/{id}/query", "title": "Report Query SQL", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/analytics/default_reports/{id}/query -v -u {name}:{password} -X GET", "type": "json" } ], "name": "query", "group": "Analytic_Default_Reports", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/analyticDefaultReport/index.js", "groupTitle": "Analytic_Default_Reports" }, { "type": "get", "url": "/api/analytics/default_reports/{id}/run", "title": "Report Run", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/analytics/default_reports/{id}/run -v -u {name}:{password} -X GET", "type": "json" } ], "name": "run", "group": "Analytic_Default_Reports", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/analyticDefaultReport/index.js", "groupTitle": "Analytic_Default_Reports" }, { "type": "put", "url": "/api/analytics/default_reports/{id}", "title": "Update an existing Analytic Default Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/analytics/default_reports/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateAnalytic_Default_Reports", "group": "Analytic_Default_Reports", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/analyticDefaultReport/index.js", "groupTitle": "Analytic_Default_Reports" }, { "type": "post", "url": "/api/analytics/extracted_reports", "title": "Creates a new Analytic Extracted Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/analytics/extracted_reports -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateAnalytic_Extacted_Reports", "group": "Analytic_Extracted_Reports", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "name", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"csv\"", "\"pdf\"", "\"xlsx\"" ], "optional": false, "field": "output", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "savename", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "startDate", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "endDate", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "status", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"manual\"", "\"scheduled\"" ], "optional": false, "field": "type", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/analyticExtractedReport/index.js", "groupTitle": "Analytic_Extracted_Reports" }, { "type": "delete", "url": "/api/analytics/extracted_reports/{id}", "title": "Deletes a Analytic Extracted Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/analytics/extracted_reports/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteAnalytic_Extacted_Reports", "group": "Analytic_Extracted_Reports", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/analyticExtractedReport/index.js", "groupTitle": "Analytic_Extracted_Reports" }, { "type": "get", "url": "/api/analytics/extracted_reports", "title": "Gets a list of Analytic Extacted Reports", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/analytics/extracted_reports -v -u {name}:{password}", "type": "json" } ], "name": "GetAnalytic_Extacted_Reports", "group": "Analytic_Extracted_Reports", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/analytics/extracted_reports?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/analytics/extracted_reports?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/analytics/extracted_reports?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/analytics/extracted_reports?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/analytics/extracted_reports?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/analyticExtractedReport/index.js", "groupTitle": "Analytic_Extracted_Reports" }, { "type": "get", "url": "/api/analytics/extracted_reports/{id}", "title": "Gets a single Analytic Extracted Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/analytics/extracted_reports/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowAnalytic_Extacted_Reports", "group": "Analytic_Extracted_Reports", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/analyticExtractedReport/index.js", "groupTitle": "Analytic_Extracted_Reports" }, { "type": "get", "url": "/api/analytics/extracted_reports/{id}/download", "title": "Download Extracted Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/analytics/extracted_reports/{id}/download -v -u {name}:{password} -X GET", "type": "json" } ], "name": "download", "group": "Analytic_Extracted_Reports", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/analyticExtractedReport/index.js", "groupTitle": "Analytic_Extracted_Reports" }, { "type": "put", "url": "/api/analytics/extracted_reports/{id}", "title": "Update an existing Analytic Extracted Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/analytics/extracted_reports/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateAnalytic_Extacted_Reports", "group": "Analytic_Extracted_Reports", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/analyticExtractedReport/index.js", "groupTitle": "Analytic_Extracted_Reports" }, { "type": "post", "url": "/api/analytics/field_reports/create_many", "title": "Creates many Analytic Field Reports", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/analytics/field_reports/create_many -d '[{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}]' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "BulkCreateAnalytic_Field_Reports", "group": "Analytic_Field_Reports", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "field", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "alias", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "function", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "format", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "groupBy", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "orderBy", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "custom", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/analyticFieldReport/index.js", "groupTitle": "Analytic_Field_Reports" }, { "type": "delete", "url": "/api/analytics/field_reports/destroy_many?ids={ids}", "title": "Deletes many Analytic Field Reports", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/analytics/field_reports/destroy_many?ids=1&ids=2&ids=3 -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "BulkDeleteAnalytic_Field_Reports", "group": "Analytic_Field_Reports", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/analyticFieldReport/index.js", "groupTitle": "Analytic_Field_Reports" }, { "type": "post", "url": "/api/analytics/field_reports", "title": "Creates a new Analytic Field Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/analytics/field_reports -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateAnalytic_Field_Reports", "group": "Analytic_Field_Reports", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "field", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "alias", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "function", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "format", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "groupBy", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "orderBy", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "custom", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/analyticFieldReport/index.js", "groupTitle": "Analytic_Field_Reports" }, { "type": "delete", "url": "/api/analytics/field_reports/{id}", "title": "Deletes a Analytic Field Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/analytics/field_reports/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteAnalytic_Field_Reports", "group": "Analytic_Field_Reports", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/analyticFieldReport/index.js", "groupTitle": "Analytic_Field_Reports" }, { "type": "get", "url": "/api/analytics/field_reports", "title": "Gets a list of Analytic Field Reports", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/analytics/field_reports -v -u {name}:{password}", "type": "json" } ], "name": "GetAnalytic_Field_Reports", "group": "Analytic_Field_Reports", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/analytics/field_reports?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/analytics/field_reports?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/analytics/field_reports?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/analytics/field_reports?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/analytics/field_reports?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/analyticFieldReport/index.js", "groupTitle": "Analytic_Field_Reports" }, { "type": "get", "url": "/api/analytics/field_reports/{id}", "title": "Gets a single Analytic Field Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/analytics/field_reports/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowAnalytic_Field_Reports", "group": "Analytic_Field_Reports", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/analyticFieldReport/index.js", "groupTitle": "Analytic_Field_Reports" }, { "type": "post", "url": "/api/analytics/field_reports/{id}/create_many", "title": "Rewrite fields set", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/analytics/field_reports/{id}/create_many -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addFields", "group": "Analytic_Field_Reports", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/analyticFieldReport/index.js", "groupTitle": "Analytic_Field_Reports" }, { "type": "put", "url": "/api/analytics/field_reports/{id}", "title": "Update an existing Analytic Field Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/analytics/field_reports/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateAnalytic_Field_Reports", "group": "Analytic_Field_Reports", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/analyticFieldReport/index.js", "groupTitle": "Analytic_Field_Reports" }, { "type": "post", "url": "/api/analytics/metrics", "title": "Creates a new Analytic Metrics", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/analytics/metrics -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateAnalytic_Metric", "group": "Analytic_Metrics", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "table", "description": "" }, { "group": "Body", "type": "Text", "optional": true, "field": "metric", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/analyticMetric/index.js", "groupTitle": "Analytic_Metrics" }, { "type": "delete", "url": "/api/analytics/metrics/{id}", "title": "Deletes a Analytic Metrics", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/analytics/metrics/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteAnalytic_Metric", "group": "Analytic_Metrics", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/analyticMetric/index.js", "groupTitle": "Analytic_Metrics" }, { "type": "get", "url": "/api/analytics/metrics", "title": "Gets a list of Analytic Metric", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/analytics/metrics -v -u {name}:{password}", "type": "json" } ], "name": "GetAnalytic_Metric", "group": "Analytic_Metrics", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/analytics/metrics?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/analytics/metrics?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/analytics/metrics?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/analytics/metrics?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/analytics/metrics?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/analyticMetric/index.js", "groupTitle": "Analytic_Metrics" }, { "type": "get", "url": "/api/analytics/metrics/{id}", "title": "Gets a single Analytic Metrics", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/analytics/metrics/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowAnalytic_Metric", "group": "Analytic_Metrics", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/analyticMetric/index.js", "groupTitle": "Analytic_Metrics" }, { "type": "put", "url": "/api/analytics/metrics/{id}", "title": "Update an existing Analytic Metrics", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/analytics/metrics/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateAnalytic_Metric", "group": "Analytic_Metrics", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/analyticMetric/index.js", "groupTitle": "Analytic_Metrics" }, { "type": "post", "url": "/api/analytics/tree_reports", "title": "Creates a new Analytic Tree Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/analytics/tree_reports -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateAnalytic_Tree_Reports", "group": "Analytic_Tree_Reports", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "Text", "optional": false, "field": "tree", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/analyticTreeReport/index.js", "groupTitle": "Analytic_Tree_Reports" }, { "type": "delete", "url": "/api/analytics/tree_reports/{id}", "title": "Deletes a Analytic Tree Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/analytics/tree_reports/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteAnalytic_Tree_Reports", "group": "Analytic_Tree_Reports", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/analyticTreeReport/index.js", "groupTitle": "Analytic_Tree_Reports" }, { "type": "get", "url": "/api/analytics/tree_reports", "title": "Gets a list of Analytic Tree Reports", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/analytics/tree_reports -v -u {name}:{password}", "type": "json" } ], "name": "GetAnalytic_Tree_Reports", "group": "Analytic_Tree_Reports", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/analytics/tree_reports?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/analytics/tree_reports?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/analytics/tree_reports?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/analytics/tree_reports?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/analytics/tree_reports?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/analyticTreeReport/index.js", "groupTitle": "Analytic_Tree_Reports" }, { "type": "get", "url": "/api/analytics/tree_reports/{id}", "title": "Gets a single Analytic Tree Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/analytics/tree_reports/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowAnalytic_Tree_Reports", "group": "Analytic_Tree_Reports", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/analyticTreeReport/index.js", "groupTitle": "Analytic_Tree_Reports" }, { "type": "put", "url": "/api/analytics/tree_reports/{id}", "title": "Update an existing Analytic Tree Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/analytics/tree_reports/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateAnalytic_Tree_Reports", "group": "Analytic_Tree_Reports", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/analyticTreeReport/index.js", "groupTitle": "Analytic_Tree_Reports" }, { "type": "delete", "url": "/api/attachments/{id}", "title": "Deletes a Attachment", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/attachments/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteAttachments", "group": "Attachments", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/attachment/index.js", "groupTitle": "Attachments" }, { "type": "get", "url": "/api/attachments", "title": "Gets a list of Attachments", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/attachments -v -u {name}:{password}", "type": "json" } ], "name": "GetAttachments", "group": "Attachments", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/attachments?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/attachments?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/attachments?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/attachments?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/attachments?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/attachment/index.js", "groupTitle": "Attachments" }, { "type": "get", "url": "/api/attachments/{id}", "title": "Gets a single Attachment", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/attachments/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowAttachments", "group": "Attachments", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/attachment/index.js", "groupTitle": "Attachments" }, { "type": "post", "url": "/api/attachments", "title": "Add attachment", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/attachments -H 'Content-Type: multipart/form-data' -F 'file=@{filename}' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "create", "group": "Attachments", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/attachment/index.js", "groupTitle": "Attachments" }, { "type": "get", "url": "/api/attachments/:id/download", "title": "Download attachment", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/attachments/:id/download -v -u {name}:{password} -X GET", "type": "json" } ], "name": "download", "group": "Attachments", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/attachment/index.js", "groupTitle": "Attachments" }, { "type": "get", "url": "/api/chat/interactions/{id}/attachment_download", "title": "Download attachment", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/interactions/{id}/attachment_download -v -u {name}:{password} -X GET", "type": "json" } ], "name": "show", "group": "Attachments", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatInteraction/index.js", "groupTitle": "Attachments" }, { "type": "put", "url": "/api/attachments/{id}", "title": "Update an existing Attachment", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/attachments/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateAttachments", "group": "Attachments", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/attachment/index.js", "groupTitle": "Attachments" }, { "type": "post", "url": "/api/auth/local/forgot", "title": "Creates a new password reset token", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/auth/local/forgot -d '{\"email\": \"john.doe@xcally.com\"}' \\\n -H \"Content-Type: application/json\" -X POST", "type": "json" } ], "name": "Local_Forgot_Password", "group": "Authentication", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "email", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/authLocal/index.js", "groupTitle": "Authentication" }, { "type": "post", "url": "/api/auth/local/reset/:token", "title": "Reset user password", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/auth/local/reset/94b422c1fkdjhg766a198da6997yu6gcc963641d -d '{\"password\": \"My_newP@ssw0rd\"}' \\\n -H \"Content-Type: application/json\" -X POST", "type": "json" } ], "name": "Local_Reset_Password", "group": "Authentication", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "password", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/authLocal/index.js", "groupTitle": "Authentication" }, { "type": "post", "url": "/api/auth/google", "title": "Creates a new User token", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/auth/google -d '{\"name\": \"john.doe\", \"password\": \"password\"}' \\\n -H \"Content-Type: application/json\" -X POST", "type": "json" } ], "name": "Local_login", "group": "Authentication", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "password", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/authGoogle/index.js", "groupTitle": "Authentication" }, { "type": "post", "url": "/api/auth/local", "title": "Creates a new User token", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/auth/local -d '{\"name\": \"john.doe\", \"password\": \"password\"}' \\\n -H \"Content-Type: application/json\" -X POST", "type": "json" } ], "name": "Local_login", "group": "Authentication", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "password", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/authLocal/index.js", "groupTitle": "Authentication" }, { "type": "post", "url": "/api/automations", "title": "Creates a new Automation", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/automations -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateAutomations", "group": "Automations", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "channel", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "status", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "timeout", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/automation/index.js", "groupTitle": "Automations" }, { "type": "delete", "url": "/api/automations/{id}", "title": "Deletes a Automation", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/automations/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteAutomations", "group": "Automations", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/automation/index.js", "groupTitle": "Automations" }, { "type": "get", "url": "/api/automations", "title": "Gets a list of Automations", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/automations -v -u {name}:{password}", "type": "json" } ], "name": "GetAutomations", "group": "Automations", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/automations?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/automations?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/automations?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/automations?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/automations?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/automation/index.js", "groupTitle": "Automations" }, { "type": "get", "url": "/api/automations/{id}", "title": "Gets a single Automation", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/automations/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowAutomations", "group": "Automations", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/automation/index.js", "groupTitle": "Automations" }, { "type": "post", "url": "/api/automations/{id}/actions", "title": "Creates new actions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/automations/{id}/actions -d '[{\"firstName\": \"John Doe\", \"email\": \"john.doe@xcally.com\", \"...\": \"...\"}]' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addActions", "group": "Automations", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "Virtual", "optional": true, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "action", "description": "

Allowed values: contactManager, integration, motionbar, jscripty, urlForward, browser

" }, { "group": "Body", "type": "String", "optional": true, "field": "data1", "description": "

contactManager[ListId], integration[intName(zendesk)], motionbar[Popup(0),URL(1),WinApp(2)], urlForward[GET,POST], browser[TemplateId(0),URL(1)]

" }, { "group": "Body", "type": "String", "optional": true, "field": "data2", "description": "

integration[AccountId], motionbar[TemplateId,URL,WinAppPath], urlForward[URL]

" }, { "group": "Body", "type": "String", "optional": true, "field": "data3", "description": "

motionbar[NULL,NULL,WinAppArguments]

" }, { "group": "Body", "type": "String", "optional": true, "field": "data4", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "data5", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "data6", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/automation/index.js", "groupTitle": "Automations" }, { "type": "post", "url": "/api/automations/{id}/conditions", "title": "Creates new conditions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/automations/{id}/conditions -d '[{\"firstName\": \"John Doe\", \"email\": \"john.doe@xcally.com\", \"...\": \"...\"}]' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addConditions", "group": "Automations", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "Virtual", "optional": true, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "field", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "operator", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "value", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/automation/index.js", "groupTitle": "Automations" }, { "type": "get", "url": "/api/automations/{id}/actions", "title": "Gets Automation Actions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/automations/{id}/actions -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getActions", "group": "Automations", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/automation/index.js", "groupTitle": "Automations" }, { "type": "get", "url": "/api/automations/{id}/conditions", "title": "Gets Automation Conditions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/automations/{id}/conditions -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getConditions", "group": "Automations", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/automation/index.js", "groupTitle": "Automations" }, { "type": "put", "url": "/api/automations/{id}", "title": "Update an existing Automation", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/automations/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateAutomations", "group": "Automations", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/automation/index.js", "groupTitle": "Automations" }, { "type": "post", "url": "/api/canned_answers", "title": "Create a new canned answer", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/canned_answers -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "Create", "group": "Canned_Answers", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cannedAnswer/index.js", "groupTitle": "Canned_Answers" }, { "type": "delete", "url": "/api/canned_answers/{id}", "title": "Deletes a Canned Answer", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/canned_answers/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteCanned_Answers", "group": "Canned_Answers", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cannedAnswer/index.js", "groupTitle": "Canned_Answers" }, { "type": "get", "url": "/api/canned_answers", "title": "Gets a list of Canned Answers", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/canned_answers -v -u {name}:{password}", "type": "json" } ], "name": "GetCanned_Answers", "group": "Canned_Answers", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/canned_answers?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/canned_answers?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/canned_answers?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/canned_answers?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/canned_answers?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/cannedAnswer/index.js", "groupTitle": "Canned_Answers" }, { "type": "get", "url": "/api/canned_answers/{id}", "title": "Gets a single Canned Answer", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/canned_answers/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowCanned_Answers", "group": "Canned_Answers", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cannedAnswer/index.js", "groupTitle": "Canned_Answers" }, { "type": "put", "url": "/api/canned_answers/{id}", "title": "Update an existing Canned Answer", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/canned_answers/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateCanned_Answers", "group": "Canned_Answers", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cannedAnswer/index.js", "groupTitle": "Canned_Answers" }, { "type": "delete", "url": "/api/chat/applications/{id}", "title": "Deletes a Application", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/applications/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteApplications", "group": "Chat_Applications", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatApplication/index.js", "groupTitle": "Chat_Applications" }, { "type": "get", "url": "/api/chat/applications/{id}", "title": "Gets a single Application", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/applications/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowApplications", "group": "Chat_Applications", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatApplication/index.js", "groupTitle": "Chat_Applications" }, { "type": "put", "url": "/api/chat/applications/{id}", "title": "Update an existing Application", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/applications/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateApplications", "group": "Chat_Applications", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatApplication/index.js", "groupTitle": "Chat_Applications" }, { "type": "post", "url": "/api/chat/dispositions", "title": "Creates a new Disposition", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/dispositions -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateDispositions", "group": "Chat_Dispositions", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "name", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatDisposition/index.js", "groupTitle": "Chat_Dispositions" }, { "type": "delete", "url": "/api/chat/dispositions/{id}", "title": "Deletes a Disposition", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/dispositions/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteDispositions", "group": "Chat_Dispositions", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatDisposition/index.js", "groupTitle": "Chat_Dispositions" }, { "type": "get", "url": "/api/chat/dispositions/{id}", "title": "Gets a single Disposition", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/dispositions/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowDispositions", "group": "Chat_Dispositions", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatDisposition/index.js", "groupTitle": "Chat_Dispositions" }, { "type": "put", "url": "/api/chat/dispositions/{id}", "title": "Update an existing Disposition", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/dispositions/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateDispositions", "group": "Chat_Dispositions", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatDisposition/index.js", "groupTitle": "Chat_Dispositions" }, { "type": "post", "url": "/api/chat/groups", "title": "Creates a new Group", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/groups -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateGroups", "group": "Chat_Groups", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "write", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatGroup/index.js", "groupTitle": "Chat_Groups" }, { "type": "delete", "url": "/api/chat/groups/{id}", "title": "Deletes a Group", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/groups/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteGroups", "group": "Chat_Groups", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatGroup/index.js", "groupTitle": "Chat_Groups" }, { "type": "get", "url": "/api/chat/groups/describe", "title": "Gets table info about Groups", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/groups/describe -v -u {name}:{password}", "type": "json" } ], "name": "DescribeGroups", "group": "Chat_Groups", "description": "

Motion will return a HTTP status code 200 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatGroup/index.js", "groupTitle": "Chat_Groups" }, { "type": "get", "url": "/api/chat/groups", "title": "Gets a list of Groups", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/groups -v -u {name}:{password}", "type": "json" } ], "name": "GetGroups", "group": "Chat_Groups", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/chat/groups?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/chat/groups?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/chat/groups?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/chat/groups?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/chat/groups?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/chatGroup/index.js", "groupTitle": "Chat_Groups" }, { "type": "delete", "url": "/api/chat/groups/{id}/members", "title": "Removes members from a group", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/groups/{id}/members?ids=1&ids=2 -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "RemoveMembers", "group": "Chat_Groups", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatGroup/index.js", "groupTitle": "Chat_Groups" }, { "type": "get", "url": "/api/chat/groups/{id}", "title": "Gets a single Group", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/groups/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowGroups", "group": "Chat_Groups", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatGroup/index.js", "groupTitle": "Chat_Groups" }, { "type": "post", "url": "/api/chat/groups/{id}/members", "title": "Add members to chat group", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/groups/{id}/members -d '{\"ids\": [1,2]}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addMembers", "group": "Chat_Groups", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatGroup/index.js", "groupTitle": "Chat_Groups" }, { "type": "post", "url": "/api/chat/groups/{id}/messages", "title": "Creates a new group message", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/groups/{id}/messages -d '{\"body\": \"Hi operator!\"}' -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addMessage", "group": "Chat_Groups", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatGroup/index.js", "groupTitle": "Chat_Groups" }, { "type": "get", "url": "/api/chat/groups/{id}/members", "title": "Gets Members", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/groups/{id}/members -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getMembers", "group": "Chat_Groups", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatGroup/index.js", "groupTitle": "Chat_Groups" }, { "type": "get", "url": "/api/chat/groups/{id}/messages", "title": "Gets Messages", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/groups/{id}/messages -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getMessages", "group": "Chat_Groups", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatGroup/index.js", "groupTitle": "Chat_Groups" }, { "type": "get", "url": "/api/chat/groups/{id}/unread", "title": "Get unread chat group messages", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/groups/{id}/unread -H 'Content-Type: application/json' -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getUread", "group": "Chat_Groups", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatGroup/index.js", "groupTitle": "Chat_Groups" }, { "type": "put", "url": "/api/chat/groups/{id}", "title": "Update an existing Group", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/groups/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateGroups", "group": "Chat_Groups", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatGroup/index.js", "groupTitle": "Chat_Groups" }, { "type": "post", "url": "/api/chat/interactions/{id}/tags", "title": "Add tags to the interaction", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/interaction/{id}/tags -d '{\"ids\": [1,2]}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "AddTags", "group": "Chat_Interactions", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatInteraction/index.js", "groupTitle": "Chat_Interactions" }, { "type": "post", "url": "/api/chat/interactions", "title": "Creates a new Interaction", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/interactions -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateInteractions", "group": "Chat_Interactions", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "Boolean", "optional": true, "field": "closed", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "ratingValue", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"star\"", "\"thumb\"" ], "optional": true, "field": "ratingType", "description": "" }, { "group": "Body", "type": "Text", "optional": true, "field": "ratingMessage", "description": "" }, { "group": "Body", "type": "Text", "optional": true, "field": "pathTranscript", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "mailTranscript", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "closedAt", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "disposition", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "note", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "browserName", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "browserVersion", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "osName", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "osVersion", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "deviceModel", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "deviceVendor", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "deviceType", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "referer", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "customerIp", "description": "" }, { "group": "Body", "type": "Text", "optional": true, "field": "formData", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "read1stAt", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "lastMsgAt", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"in\"", "\"out\"" ], "optional": false, "field": "lastMsgDirection", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatInteraction/index.js", "groupTitle": "Chat_Interactions" }, { "type": "delete", "url": "/api/chat/interactions/{id}", "title": "Deletes a Interaction", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/interactions/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteInteractions", "group": "Chat_Interactions", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatInteraction/index.js", "groupTitle": "Chat_Interactions" }, { "type": "get", "url": "/api/chat/interactions/describe", "title": "Gets table info about Interactions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/interactions/describe -v -u {name}:{password}", "type": "json" } ], "name": "DescribeInteractions", "group": "Chat_Interactions", "description": "

Motion will return a HTTP status code 200 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatInteraction/index.js", "groupTitle": "Chat_Interactions" }, { "type": "get", "url": "/api/chat/interactions", "title": "Gets a list of Interactions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/interactions -v -u {name}:{password}", "type": "json" } ], "name": "GetInteractions", "group": "Chat_Interactions", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/chat/interactions?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/chat/interactions?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/chat/interactions?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/chat/interactions?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/chat/interactions?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/chatInteraction/index.js", "groupTitle": "Chat_Interactions" }, { "type": "delete", "url": "/api/chat/interactions/{id}/tags", "title": "Removes tags from interaction", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/interactions/{id}/tags?ids=1&ids=2 -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "RemoveTags", "group": "Chat_Interactions", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatInteraction/index.js", "groupTitle": "Chat_Interactions" }, { "type": "get", "url": "/api/chat/interactions/{id}", "title": "Gets a single Interaction", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/interactions/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowInteractions", "group": "Chat_Interactions", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatInteraction/index.js", "groupTitle": "Chat_Interactions" }, { "type": "put", "url": "/api/chat/interactions/{id}/abandon", "title": "Abandon interaction", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/interactions/{id}/abandon -d '{\"channel\": \"chat\", \"...\": \"...\"}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "abandon", "group": "Chat_Interactions", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

This API is used to set as abandon an interaction and stop the routing.

", "version": "0.0.0", "filename": "server/api/chatInteraction/index.js", "groupTitle": "Chat_Interactions" }, { "type": "post", "url": "/api/chat/interactions/{id}/messages", "title": "Creates new messages", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/interactions/{id}/messages -d '[{\"to\": \"+3901119886500\", \"...\": \"...\"}]' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addMessage", "group": "Chat_Interactions", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "Text", "optional": false, "field": "body", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "read", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "secret", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"in\"", "\"out\"" ], "optional": false, "field": "direction", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "readAt", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatInteraction/index.js", "groupTitle": "Chat_Interactions" }, { "type": "put", "url": "/api/chat/interactions/{id}/close", "title": "Close Interaction", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/interactions/{id}/close -d '[{\"to\": \"+3901119886500\", \"...\": \"...\"}]' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addMessage", "group": "Chat_Interactions", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatInteraction/index.js", "groupTitle": "Chat_Interactions" }, { "type": "post", "url": "/api/chat/interactions/{id}/attachment_upload", "title": "Add attachment", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/interactions/{id}/attachment_upload -H 'Content-Type: multipart/form-data' -F 'file=@{filename}' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "attachmentUpload", "group": "Chat_Interactions", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatInteraction/index.js", "groupTitle": "Chat_Interactions" }, { "type": "get", "url": "/api/chat/interactions/{id}/messages", "title": "Gets interaction messages", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/interactions/{id}/messages -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getMessages", "group": "Chat_Interactions", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatInteraction/index.js", "groupTitle": "Chat_Interactions" }, { "type": "get", "url": "/api/chat/interactions/{id}/my_messages", "title": "Gets interaction messages", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/interactions/{id}/my_messages -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getMyMessages", "group": "Chat_Interactions", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatInteraction/index.js", "groupTitle": "Chat_Interactions" }, { "type": "put", "url": "/api/chat/interactions/{id}", "title": "Update an existing Interaction", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/interactions/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateInteractions", "group": "Chat_Interactions", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatInteraction/index.js", "groupTitle": "Chat_Interactions" }, { "type": "post", "url": "/api/chat/internal/messages", "title": "Creates a new Message", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/internal/messages -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateMessages", "group": "Chat_Internal_Messages", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "Text", "optional": false, "field": "body", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "read", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "ChatInternalMessageId", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatInternalMessage/index.js", "groupTitle": "Chat_Internal_Messages" }, { "type": "delete", "url": "/api/chat/internal/messages/{id}", "title": "Deletes a Message", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/internal/messages/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteMessages", "group": "Chat_Internal_Messages", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatInternalMessage/index.js", "groupTitle": "Chat_Internal_Messages" }, { "type": "get", "url": "/api/chat/internal/messages/describe", "title": "Gets table info about Messages", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/internal/messages/describe -v -u {name}:{password}", "type": "json" } ], "name": "DescribeMessages", "group": "Chat_Internal_Messages", "description": "

Motion will return a HTTP status code 200 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatInternalMessage/index.js", "groupTitle": "Chat_Internal_Messages" }, { "type": "get", "url": "/api/chat/internal/messages", "title": "Gets a list of Messages", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/internal/messages -v -u {name}:{password}", "type": "json" } ], "name": "GetMessages", "group": "Chat_Internal_Messages", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/chat/internal/messages?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/chat/internal/messages?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/chat/internal/messages?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/chat/internal/messages?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/chat/internal/messages?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/chatInternalMessage/index.js", "groupTitle": "Chat_Internal_Messages" }, { "type": "get", "url": "/api/chat/internal/messages/{id}", "title": "Gets a single Message", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/internal/messages/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowMessages", "group": "Chat_Internal_Messages", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatInternalMessage/index.js", "groupTitle": "Chat_Internal_Messages" }, { "type": "put", "url": "/api/chat/internal/messages/{id}", "title": "Update an existing Message", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/internal/messages/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateMessages", "group": "Chat_Internal_Messages", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatInternalMessage/index.js", "groupTitle": "Chat_Internal_Messages" }, { "type": "post", "url": "/api/chat/messages", "title": "Creates a new Message", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/messages -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateMessages", "group": "Chat_Messages", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "Text", "optional": false, "field": "body", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "read", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "secret", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"in\"", "\"out\"" ], "optional": false, "field": "direction", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "readAt", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatMessage/index.js", "groupTitle": "Chat_Messages" }, { "type": "delete", "url": "/api/chat/messages/{id}", "title": "Deletes a Message", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/messages/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteMessages", "group": "Chat_Messages", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatMessage/index.js", "groupTitle": "Chat_Messages" }, { "type": "get", "url": "/api/chat/messages/describe", "title": "Gets table info about Messages", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/messages/describe -v -u {name}:{password}", "type": "json" } ], "name": "DescribeMessages", "group": "Chat_Messages", "description": "

Motion will return a HTTP status code 200 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatMessage/index.js", "groupTitle": "Chat_Messages" }, { "type": "get", "url": "/api/chat/messages", "title": "Gets a list of Messages", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/messages -v -u {name}:{password}", "type": "json" } ], "name": "GetMessages", "group": "Chat_Messages", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/chat/messages?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/chat/messages?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/chat/messages?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/chat/messages?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/chat/messages?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/chatMessage/index.js", "groupTitle": "Chat_Messages" }, { "type": "get", "url": "/api/chat/messages/{id}", "title": "Gets a single Message", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/messages/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowMessages", "group": "Chat_Messages", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatMessage/index.js", "groupTitle": "Chat_Messages" }, { "type": "put", "url": "/api/chat/messages/{id}", "title": "Update an existing Message", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/messages/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateMessages", "group": "Chat_Messages", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatMessage/index.js", "groupTitle": "Chat_Messages" }, { "type": "post", "url": "/api/chat/offline_messages", "title": "Creates a new OfflineMessage", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/offline_messages -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateOfflineMessages", "group": "Chat_Offline_Messages", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "Text", "optional": false, "field": "body", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatOfflineMessage/index.js", "groupTitle": "Chat_Offline_Messages" }, { "type": "delete", "url": "/api/chat/offline_messages/{id}", "title": "Deletes a OfflineMessage", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/offline_messages/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteOfflineMessages", "group": "Chat_Offline_Messages", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatOfflineMessage/index.js", "groupTitle": "Chat_Offline_Messages" }, { "type": "get", "url": "/api/chat/offline_messages/describe", "title": "Gets table info about OfflineMessages", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/offline_messages/describe -v -u {name}:{password}", "type": "json" } ], "name": "DescribeOfflineMessages", "group": "Chat_Offline_Messages", "description": "

Motion will return a HTTP status code 200 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatOfflineMessage/index.js", "groupTitle": "Chat_Offline_Messages" }, { "type": "get", "url": "/api/chat/offline_messages", "title": "Gets a list of OfflineMessages", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/offline_messages -v -u {name}:{password}", "type": "json" } ], "name": "GetOfflineMessages", "group": "Chat_Offline_Messages", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/chat/offline_messages?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/chat/offline_messages?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/chat/offline_messages?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/chat/offline_messages?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/chat/offline_messages?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/chatOfflineMessage/index.js", "groupTitle": "Chat_Offline_Messages" }, { "type": "get", "url": "/api/chat/offline_messages/{id}", "title": "Gets a single OfflineMessage", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/offline_messages/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowOfflineMessages", "group": "Chat_Offline_Messages", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatOfflineMessage/index.js", "groupTitle": "Chat_Offline_Messages" }, { "type": "put", "url": "/api/chat/offline_messages/{id}", "title": "Update an existing OfflineMessage", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/offline_messages/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateOfflineMessages", "group": "Chat_Offline_Messages", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatOfflineMessage/index.js", "groupTitle": "Chat_Offline_Messages" }, { "type": "post", "url": "/api/chat/proactive_actions", "title": "Creates a new Proactive Action", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/proactive_actions -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateProactive_Actions", "group": "Chat_Proactive_Actions", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "name", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"mouseOver\"", "\"timeout\"" ], "optional": true, "field": "type", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "selector", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "timeout", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatProactiveAction/index.js", "groupTitle": "Chat_Proactive_Actions" }, { "type": "delete", "url": "/api/chat/proactive_actions/{id}", "title": "Deletes a Proactive Action", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/proactive_actions/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteProactive_Actions", "group": "Chat_Proactive_Actions", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatProactiveAction/index.js", "groupTitle": "Chat_Proactive_Actions" }, { "type": "get", "url": "/api/chat/proactive_actions/{id}", "title": "Gets a single Proactive Action", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/proactive_actions/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowProactive_Actions", "group": "Chat_Proactive_Actions", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatProactiveAction/index.js", "groupTitle": "Chat_Proactive_Actions" }, { "type": "put", "url": "/api/chat/proactive_actions/{id}", "title": "Update an existing Proactive Action", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/proactive_actions/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateProactive_Actions", "group": "Chat_Proactive_Actions", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatProactiveAction/index.js", "groupTitle": "Chat_Proactive_Actions" }, { "type": "post", "url": "/api/chat/reports/queue", "title": "Creates a new Chat Queue Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/reports/queue -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateChat_Queue_Reports", "group": "Chat_Queue_Reports", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "uniqueid", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "from", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "joinAt", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "leaveAt", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "acceptAt", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "exitAt", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "reason", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatQueueReport/index.js", "groupTitle": "Chat_Queue_Reports" }, { "type": "delete", "url": "/api/chat/reports/queue/{id}", "title": "Deletes a Chat Queue Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/reports/queue/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteChat_Queue_Reports", "group": "Chat_Queue_Reports", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatQueueReport/index.js", "groupTitle": "Chat_Queue_Reports" }, { "type": "get", "url": "/api/chat/reports/queue/describe", "title": "Gets table info about Chat Queue Reports", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/reports/queue/describe -v -u {name}:{password}", "type": "json" } ], "name": "DescribeChat_Queue_Reports", "group": "Chat_Queue_Reports", "description": "

Motion will return a HTTP status code 200 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatQueueReport/index.js", "groupTitle": "Chat_Queue_Reports" }, { "type": "get", "url": "/api/chat/reports/queue", "title": "Gets a list of Chat Queue Reports", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/reports/queue -v -u {name}:{password}", "type": "json" } ], "name": "GetChat_Queue_Reports", "group": "Chat_Queue_Reports", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/chat/reports/queue?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/chat/reports/queue?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/chat/reports/queue?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/chat/reports/queue?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/chat/reports/queue?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/chatQueueReport/index.js", "groupTitle": "Chat_Queue_Reports" }, { "type": "get", "url": "/api/chat/reports/queue/{id}", "title": "Gets a single Chat Queue Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/reports/queue/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowChat_Queue_Reports", "group": "Chat_Queue_Reports", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatQueueReport/index.js", "groupTitle": "Chat_Queue_Reports" }, { "type": "put", "url": "/api/chat/reports/queue/{id}", "title": "Update an existing Chat Queue Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/reports/queue/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateChat_Queue_Reports", "group": "Chat_Queue_Reports", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatQueueReport/index.js", "groupTitle": "Chat_Queue_Reports" }, { "type": "post", "url": "/api/chat/queues/{id}/users", "title": "Add agents to a queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/queues/{id}/users -d '{\"ids\": [1,2], \"penalty\": 2}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "AddAgents", "group": "Chat_Queues", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatQueue/index.js", "groupTitle": "Chat_Queues" }, { "type": "post", "url": "/api/chat/queues/{id}/teams", "title": "Add teams to a queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/queues/{id}/teams -d '{\"ids\": [1,2]}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "AddTeams", "group": "Chat_Queues", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatQueue/index.js", "groupTitle": "Chat_Queues" }, { "type": "post", "url": "/api/chat/queues", "title": "Creates a new Queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/queues -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateQueues", "group": "Chat_Queues", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "timeout", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"rrmemory\"", "\"beepall\"", "\"roundrobin\"" ], "optional": true, "field": "strategy", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatQueue/index.js", "groupTitle": "Chat_Queues" }, { "type": "delete", "url": "/api/chat/queues/{id}", "title": "Deletes a Queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/queues/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteQueues", "group": "Chat_Queues", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatQueue/index.js", "groupTitle": "Chat_Queues" }, { "type": "get", "url": "/api/chat/queues/describe", "title": "Gets table info about Queues", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/queues/describe -v -u {name}:{password}", "type": "json" } ], "name": "DescribeQueues", "group": "Chat_Queues", "description": "

Motion will return a HTTP status code 200 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatQueue/index.js", "groupTitle": "Chat_Queues" }, { "type": "get", "url": "/api/chat/queues/{id}/users", "title": "Gets queue agents", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/queues/{id}/users -v -u {name}:{password} -X POST", "type": "json" } ], "name": "GetAgents", "group": "Chat_Queues", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatQueue/index.js", "groupTitle": "Chat_Queues" }, { "type": "get", "url": "/api/chat/queues/{id}/members", "title": "GetMembers", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/queues/{id}/members -v -u {name}:{password}", "type": "json" } ], "name": "GetMembers", "group": "Chat_Queues", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatQueue/index.js", "groupTitle": "Chat_Queues" }, { "type": "get", "url": "/api/chat/queues", "title": "Gets a list of Queues", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/queues -v -u {name}:{password}", "type": "json" } ], "name": "GetQueues", "group": "Chat_Queues", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/chat/queues?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/chat/queues?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/chat/queues?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/chat/queues?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/chat/queues?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/chatQueue/index.js", "groupTitle": "Chat_Queues" }, { "type": "get", "url": "/api/chat/queues/{id}/teams", "title": "Gets queues list", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/queues/{id}/teams -v -u {name}:{password}", "type": "json" } ], "name": "GetTeams", "group": "Chat_Queues", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatQueue/index.js", "groupTitle": "Chat_Queues" }, { "type": "delete", "url": "/api/chat/queues/{id}/users", "title": "Removes agents from a queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/queues/{id}/users?ids=1&ids=2 -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "RemoveAgents", "group": "Chat_Queues", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatQueue/index.js", "groupTitle": "Chat_Queues" }, { "type": "get", "url": "/api/chat/queues/{id}", "title": "Gets a single Queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/queues/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowQueues", "group": "Chat_Queues", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatQueue/index.js", "groupTitle": "Chat_Queues" }, { "type": "put", "url": "/api/chat/queues/{id}", "title": "Update an existing Queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/queues/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateQueues", "group": "Chat_Queues", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatQueue/index.js", "groupTitle": "Chat_Queues" }, { "type": "post", "url": "/api/chat/websites", "title": "Creates a new Website", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/websites -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateWebsites", "group": "Chat_Websites", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "address", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "mapKey", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "mapKeyOffline", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "key", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "agentAlias", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "color", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "color_button", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "textColor", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "fontSize", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "remote", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "animation", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"rounded\"", "\"squared\"" ], "optional": true, "field": "header_shape", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "header_online", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "start_chat_button", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "offline_chat_button", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "header_offline", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "download_transcript", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "timeout", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "whiteLabel", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "defaultWhiteLabel", "description": "" }, { "group": "Body", "type": "Text", "optional": true, "field": "sitepic", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "closingQuestion", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "formSubmitSuccessMessage", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "formSubmitFailureMessage", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "noteTitle", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "placeholderMessage", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "closingMessage", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "closingMessageButton", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "skipMessageButton", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "conditionAgreement", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "enableRating", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "enableFeedback", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"star\"", "\"thumb\"" ], "optional": true, "field": "ratingType", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "ratingStarsNumber", "description": "" }, { "group": "Body", "type": "Text", "optional": true, "field": "onlineForm", "description": "" }, { "group": "Body", "type": "Text", "optional": true, "field": "offlineForm", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "token", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "autoclose", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "enableCustomerWriting", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "forwardTranscript", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "forwardTranscriptMessage", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "forwardOffline", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "forwardOfflineAddress", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "waitingTitle", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "waitingMessage", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "offlineMessageSubject", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "offlineMessageBody", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "enableUnmanagedNote", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "unmanagedMessage", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "skipUnmanaged", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "sendUnmanaged", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "enableCustomerAttachment", "description": "" }, { "group": "Body", "type": "Text", "optional": true, "field": "agentAvatar", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "showAgentAvatar", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "timezone", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatWebsite/index.js", "groupTitle": "Chat_Websites" }, { "type": "delete", "url": "/api/chat/websites/{id}", "title": "Deletes a Website", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/websites/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteWebsites", "group": "Chat_Websites", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatWebsite/index.js", "groupTitle": "Chat_Websites" }, { "type": "get", "url": "/api/chat/websites/describe", "title": "Gets table info about Websites", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/websites/describe -v -u {name}:{password}", "type": "json" } ], "name": "DescribeWebsites", "group": "Chat_Websites", "description": "

Motion will return a HTTP status code 200 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatWebsite/index.js", "groupTitle": "Chat_Websites" }, { "type": "get", "url": "/api/chat/websites", "title": "Gets a list of Websites", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/websites -v -u {name}:{password}", "type": "json" } ], "name": "GetWebsites", "group": "Chat_Websites", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/chat/websites?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/chat/websites?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/chat/websites?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/chat/websites?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/chat/websites?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/chatWebsite/index.js", "groupTitle": "Chat_Websites" }, { "type": "delete", "url": "/api/openchannel/accounts/{id}/canned_answers", "title": "Removes canned answers from account", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/accounts/{id}/canned_answers?ids=1&ids=2 -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "RemoveAnswers", "group": "Chat_Websites", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatWebsite/index.js", "groupTitle": "Chat_Websites" }, { "type": "get", "url": "/api/chat/websites/{id}", "title": "Gets a single Website", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/websites/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowWebsites", "group": "Chat_Websites", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatWebsite/index.js", "groupTitle": "Chat_Websites" }, { "type": "put", "url": "/api/chat/messages/{id}/accept", "title": "Accepts message", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/messages/{id}/accept \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "acceptMessage", "group": "Chat_Websites", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatMessage/index.js", "groupTitle": "Chat_Websites" }, { "type": "post", "url": "/api/chat/websites/{id}/canned_answers", "title": "Creates new canned answer", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/websites/{id}/canned_answers -d '{\"name\": \"vip\"}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addAnswer", "group": "Chat_Websites", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "key", "description": "" }, { "group": "Body", "type": "Text", "optional": false, "field": "value", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatWebsite/index.js", "groupTitle": "Chat_Websites" }, { "type": "post", "url": "/api/chat/websites/{id}/applications", "title": "Creates new applications", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/websites/{id}/applications -d '[{\"app\": \"queue\", \"...\": \"...\"}]' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addApplications", "group": "Chat_Websites", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "Integer", "optional": false, "field": "priority", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "app", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "appdata", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "interval", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatWebsite/index.js", "groupTitle": "Chat_Websites" }, { "type": "post", "url": "/api/chat/websites/{id}/avatar", "title": "Add avatar", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/websites/{id}/avatar -H 'Content-Type: multipart/form-data' -F 'file=@{filename}' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addAvatar", "group": "Chat_Websites", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatWebsite/index.js", "groupTitle": "Chat_Websites" }, { "type": "post", "url": "/api/chat/websites/{id}/dispositions", "title": "Creates new disposition", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/websites/{id}/dispositions -d '{\"name\": \"Satisfied\"}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addDisposition", "group": "Chat_Websites", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "name", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatWebsite/index.js", "groupTitle": "Chat_Websites" }, { "type": "post", "url": "/api/chat/websites/{id}/dispositions", "title": "Creates many dispositions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/websites/{id}/dispositions -d '[{\"name\": \"Satisfied\"}]' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addDispositions", "group": "Chat_Websites", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "name", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatWebsite/index.js", "groupTitle": "Chat_Websites" }, { "type": "post", "url": "/api/chat/accounts/{id}/interactions", "title": "Creates new interactions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/websites/{id}/interactions -d '{\"host\": \"host\", \"username\": \"username\", \"password\": \"password\", \"...\": \"...\"}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addInteraction", "group": "Chat_Websites", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "Boolean", "optional": true, "field": "closed", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "ratingValue", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"star\"", "\"thumb\"" ], "optional": true, "field": "ratingType", "description": "" }, { "group": "Body", "type": "Text", "optional": true, "field": "ratingMessage", "description": "" }, { "group": "Body", "type": "Text", "optional": true, "field": "pathTranscript", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "mailTranscript", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "closedAt", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "disposition", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "note", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "browserName", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "browserVersion", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "osName", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "osVersion", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "deviceModel", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "deviceVendor", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "deviceType", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "referer", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "customerIp", "description": "" }, { "group": "Body", "type": "Text", "optional": true, "field": "formData", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "read1stAt", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "lastMsgAt", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"in\"", "\"out\"" ], "optional": false, "field": "lastMsgDirection", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatWebsite/index.js", "groupTitle": "Chat_Websites" }, { "type": "post", "url": "/api/chat/websites/{id}/logo", "title": "Add logo", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/websites/{id}/logo -H 'Content-Type: multipart/form-data' -F 'file=@{filename}' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addLogo", "group": "Chat_Websites", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatWebsite/index.js", "groupTitle": "Chat_Websites" }, { "type": "post", "url": "/api/chat/websites/{id}/proactive_actions", "title": "Creates new Proactive Actions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/websites/{id}/proactive_actions -d '[{\"name\": \"Satisfied\"}]' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addProactiveActions", "group": "Chat_Websites", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "name", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"mouseOver\"", "\"timeout\"" ], "optional": true, "field": "type", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "selector", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "timeout", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatWebsite/index.js", "groupTitle": "Chat_Websites" }, { "type": "get", "url": "/api/chat/websites/{id}/canned_answers", "title": "Gets account canned answers", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/websites/{id}/canned_answers -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getAnswers", "group": "Chat_Websites", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatWebsite/index.js", "groupTitle": "Chat_Websites" }, { "type": "get", "url": "/api/chat/websites/{id}/applications", "title": "Gets Website Applications", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/websites/{id}/applications -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getApplications", "group": "Chat_Websites", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatWebsite/index.js", "groupTitle": "Chat_Websites" }, { "type": "get", "url": "/api/chat/websites/{id}/avatar", "title": "Get avatar", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/websites/{id}/avatar -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getAvatar", "group": "Chat_Websites", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatWebsite/index.js", "groupTitle": "Chat_Websites" }, { "type": "get", "url": "/api/chat/websites/{id}/dispositions", "title": "Gets Website Dispositions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/websites/{id}/dispositions -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getDispositions", "group": "Chat_Websites", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatWebsite/index.js", "groupTitle": "Chat_Websites" }, { "type": "get", "url": "/api/chat/websites/{id}/fields", "title": "Gets Website Fields", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/websites/{id}/fields -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getFields", "group": "Chat_Websites", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatWebsite/index.js", "groupTitle": "Chat_Websites" }, { "type": "get", "url": "/api/chat/websites/{id}/interactions", "title": "Gets Website Interactions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/websites/{id}/interactions -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getInteraction", "group": "Chat_Websites", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatWebsite/index.js", "groupTitle": "Chat_Websites" }, { "type": "get", "url": "/api/chat/websites/{id}/logo", "title": "Get logo", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/websites/{id}/logo -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getLogo", "group": "Chat_Websites", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatWebsite/index.js", "groupTitle": "Chat_Websites" }, { "type": "get", "url": "/api/chat/websites/{id}/offline_messages", "title": "Gets Website Offline Messages", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/websites/{id}/offline_messages -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getOfflineMessages", "group": "Chat_Websites", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatWebsite/index.js", "groupTitle": "Chat_Websites" }, { "type": "get", "url": "/api/chat/websites/{id}/proactive_actions", "title": "Gets Website Proactive Actions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/websites/{id}/proactive_actions -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getProactiveActions", "group": "Chat_Websites", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatWebsite/index.js", "groupTitle": "Chat_Websites" }, { "type": "get", "url": "/api/chat/websites/{id}/snippet", "title": "Gets Website Snippet", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/websites/{id}/snippet -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getSnippet", "group": "Chat_Websites", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatWebsite/index.js", "groupTitle": "Chat_Websites" }, { "type": "post", "url": "/api/chat/websites/{id}/notify", "title": "Notify new message", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/websites/{id}/notify -d '{\"body\": \"hello world\", \"...\": \"...\"}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "notify", "group": "Chat_Websites", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

This API is used to create a new chat message to be sent to the system.

", "version": "0.0.0", "filename": "server/api/chatWebsite/index.js", "groupTitle": "Chat_Websites" }, { "type": "post", "url": "/api/chat/websites/{id}/offline", "title": "Offline message", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/websites/{id}/offline -d '{\"body\": \"hello world\", \"...\": \"...\"}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "offline", "group": "Chat_Websites", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatWebsite/index.js", "groupTitle": "Chat_Websites" }, { "type": "put", "url": "/api/chat/messages/{id}/reject", "title": "Rejects message", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/messages/{id}/reject \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "rejectMessage", "group": "Chat_Websites", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatMessage/index.js", "groupTitle": "Chat_Websites" }, { "type": "put", "url": "/api/chat/websites/{id}", "title": "Update an existing Website", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/websites/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateWebsites", "group": "Chat_Websites", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatWebsite/index.js", "groupTitle": "Chat_Websites" }, { "type": "post", "url": "/api/cm/companies", "title": "Creates a new Company", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/companies -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateCompanies", "group": "Cm_Companies", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "vat", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "companyId", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "website", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "phone", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "fax", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "type", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "street", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "postalCode", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "city", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "country", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "email", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "emailDomain", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "sStreet", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "sPostalCode", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "sCity", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "sCountry", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmCompany/index.js", "groupTitle": "Cm_Companies" }, { "type": "delete", "url": "/api/cm/companies/{id}", "title": "Deletes a Company", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/companies/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteCompanies", "group": "Cm_Companies", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmCompany/index.js", "groupTitle": "Cm_Companies" }, { "type": "get", "url": "/api/cm/companies", "title": "Gets a list of Companies", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/companies -v -u {name}:{password}", "type": "json" } ], "name": "GetCompanies", "group": "Cm_Companies", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/cm/companies?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/cm/companies?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/cm/companies?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/cm/companies?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/cm/companies?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/cmCompany/index.js", "groupTitle": "Cm_Companies" }, { "type": "get", "url": "/api/cm/companies/{id}", "title": "Gets a single Company", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/companies/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowCompanies", "group": "Cm_Companies", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmCompany/index.js", "groupTitle": "Cm_Companies" }, { "type": "post", "url": "/api/cm/companies/{id}/contacts", "title": "Creates new contacts", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/companies/{id}/contacts -d '[{\"firstName\": \"John Doe\", \"email\": \"john.doe@xcally.com\", \"...\": \"...\"}]' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addContacts", "group": "Cm_Companies", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "firstName", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "lastName", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "tags", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "street", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "postalCode", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "city", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "country", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "dateOfBirth", "description": "" }, { "group": "Body", "type": "Text", "optional": true, "field": "description", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "phone", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "mobile", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "fax", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "email", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "url", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "facebook", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "twitter", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmCompany/index.js", "groupTitle": "Cm_Companies" }, { "type": "get", "url": "/api/cm/companies/{id}/contacts", "title": "Gets List Contacts", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/companies/{id}/contacts -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getContacts", "group": "Cm_Companies", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmCompany/index.js", "groupTitle": "Cm_Companies" }, { "type": "put", "url": "/api/cm/companies/{id}", "title": "Update an existing Company", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/companies/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateCompanies", "group": "Cm_Companies", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmCompany/index.js", "groupTitle": "Cm_Companies" }, { "type": "delete", "url": "/api/cm/contacts/{id}", "title": "Deletes a Contact", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/contacts/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteContacts", "group": "Cm_Contacts", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmContact/index.js", "groupTitle": "Cm_Contacts" }, { "type": "get", "url": "/api/cm/contacts/describe", "title": "Gets table info about Contacts", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/contacts/describe -v -u {name}:{password}", "type": "json" } ], "name": "DescribeContacts", "group": "Cm_Contacts", "description": "

Motion will return a HTTP status code 200 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmContact/index.js", "groupTitle": "Cm_Contacts" }, { "type": "get", "url": "/api/cm/contacts/{id}/finals", "title": "Gets contact hopper finals", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/contacts/{id}/hopper_finals -v -u {name}:{password} -X GET", "type": "json" } ], "name": "GetHopperFinals", "group": "Cm_Contacts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmContact/index.js", "groupTitle": "Cm_Contacts" }, { "type": "get", "url": "/api/cm/contacts/{id}/hopper_histories", "title": "Gets contact hopper histories", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/contacts/{id}/hopper_histories -v -u {name}:{password} -X GET", "type": "json" } ], "name": "GetHopperHistories", "group": "Cm_Contacts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmContact/index.js", "groupTitle": "Cm_Contacts" }, { "type": "get", "url": "/api/cm/contacts/{id}/hoppers", "title": "Gets contact hoppers", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/contacts/{id}/hoppers -v -u {name}:{password} -X GET", "type": "json" } ], "name": "GetHoppers", "group": "Cm_Contacts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmContact/index.js", "groupTitle": "Cm_Contacts" }, { "type": "post", "url": "/api/cm/contacts", "title": "Create Contact", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/contacts -d '{\"firstName\": \"John\", \"lastName\": \"doe\", \"...\": \"...\"}' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "create", "group": "Cm_Contacts", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmContact/index.js", "groupTitle": "Cm_Contacts" }, { "type": "post", "url": "/api/cm/contacts", "title": "Create Contacts", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/contacts -d '[{\"firstName\": \"John\", \"lastName\": \"doe\", \"...\": \"...\"}]' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "create", "group": "Cm_Contacts", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmContact/index.js", "groupTitle": "Cm_Contacts" }, { "type": "get", "url": "/api/cm/contacts/{id}/jscripty_sessions", "title": "Gets contact hopper blacks", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/contacts/{id}/hopper_black -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getJscriptySessions", "group": "Cm_Contacts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmContact/index.js", "groupTitle": "Cm_Contacts" }, { "type": "get", "url": "/api/cm/contacts", "title": "Gets all the Contacts", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/contacts -v -u {name}:{password} -X GET", "type": "json" } ], "name": "index", "group": "Cm_Contacts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmContact/index.js", "groupTitle": "Cm_Contacts" }, { "type": "post", "url": "/api/cm/contacts/merge", "title": "Merge Contact", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/contacts/merge -d '{\"ids\": [1, 2, 3]}' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "merge", "group": "Cm_Contacts", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmContact/index.js", "groupTitle": "Cm_Contacts" }, { "type": "get", "url": "/api/cm/contacts/{id}", "title": "Gets a single Contact", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/contacts/{id} -v -u {name}:{password} -X GET", "type": "json" } ], "name": "show", "group": "Cm_Contacts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmContact/index.js", "groupTitle": "Cm_Contacts" }, { "type": "put", "url": "/api/cm/contacts/{id}", "title": "Update a single Contact", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/contacts/{id} -d '{\"fullName\": \"John\", \"lastName\": \"Doe\"}' -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "update", "group": "Cm_Contacts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmContact/index.js", "groupTitle": "Cm_Contacts" }, { "type": "delete", "url": "/api/cm/custom_fields/{id}", "title": "Deletes a Custom Field", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/custom_fields/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteCustom_Fields", "group": "Cm_Custom_Fields", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmCustomField/index.js", "groupTitle": "Cm_Custom_Fields" }, { "type": "get", "url": "/api/cm/custom_fields", "title": "Gets a list of Custom Fields", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/custom_fields -v -u {name}:{password}", "type": "json" } ], "name": "GetCustom_Fields", "group": "Cm_Custom_Fields", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/cm/custom_fields?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/cm/custom_fields?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/cm/custom_fields?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/cm/custom_fields?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/cm/custom_fields?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/cmCustomField/index.js", "groupTitle": "Cm_Custom_Fields" }, { "type": "get", "url": "/api/cm/custom_fields/{id}", "title": "Gets a single Custom Field", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/custom_fields/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowCustom_Fields", "group": "Cm_Custom_Fields", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmCustomField/index.js", "groupTitle": "Cm_Custom_Fields" }, { "type": "put", "url": "/api/cm/custom_fields/{id}", "title": "Update an existing Custom Field", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/custom_fields/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateCustom_Fields", "group": "Cm_Custom_Fields", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmCustomField/index.js", "groupTitle": "Cm_Custom_Fields" }, { "type": "post", "url": "/api/cm/hopper", "title": "Creates a new Hopper", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/hopper -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateHopper", "group": "Cm_Hopper", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "phone", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "active", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "scheduledat", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "countbusyretry", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "countcongestionretry", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "countnoanswerretry", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "callback", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "callbackuniqueid", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "callbackat", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "priority", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "recallme", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "ContactId", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "ListId", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "UserId", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "VoiceQueueId", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "CampaignId", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmHopper/index.js", "groupTitle": "Cm_Hopper" }, { "type": "get", "url": "/api/cm/hopper/describe", "title": "Gets table info about Hopper", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/hopper/describe -v -u {name}:{password}", "type": "json" } ], "name": "DescribeHopper", "group": "Cm_Hopper", "description": "

Motion will return a HTTP status code 200 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmHopper/index.js", "groupTitle": "Cm_Hopper" }, { "type": "get", "url": "/api/cm/hopper", "title": "Gets a list of Hopper", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/hopper -v -u {name}:{password}", "type": "json" } ], "name": "GetHopper", "group": "Cm_Hopper", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/cm/hopper?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/cm/hopper?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/cm/hopper?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/cm/hopper?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/cm/hopper?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/cmHopper/index.js", "groupTitle": "Cm_Hopper" }, { "type": "get", "url": "/api/cm/hopper/{id}", "title": "Gets a single Hopper", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/hopper/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowHopper", "group": "Cm_Hopper", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmHopper/index.js", "groupTitle": "Cm_Hopper" }, { "type": "delete", "url": "/api/cm/hopper_black/{id}", "title": "Deletes a Hopper Black", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/hopper_black/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteHopper_Black", "group": "Cm_Hopper_Black", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmHopperBlack/index.js", "groupTitle": "Cm_Hopper_Black" }, { "type": "get", "url": "/api/cm/hopper_black/describe", "title": "Gets table info about Hopper Black", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/hopper_black/describe -v -u {name}:{password}", "type": "json" } ], "name": "DescribeHopper_Black", "group": "Cm_Hopper_Black", "description": "

Motion will return a HTTP status code 200 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmHopperBlack/index.js", "groupTitle": "Cm_Hopper_Black" }, { "type": "get", "url": "/api/cm/hopper_black", "title": "Gets a list of Hopper Black", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/hopper_black -v -u {name}:{password}", "type": "json" } ], "name": "GetHopper_Black", "group": "Cm_Hopper_Black", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/cm/hopper_black?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/cm/hopper_black?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/cm/hopper_black?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/cm/hopper_black?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/cm/hopper_black?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/cmHopperBlack/index.js", "groupTitle": "Cm_Hopper_Black" }, { "type": "get", "url": "/api/cm/hopper_black/{id}", "title": "Gets a single Hopper Black", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/hopper_black/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowHopper_Black", "group": "Cm_Hopper_Black", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmHopperBlack/index.js", "groupTitle": "Cm_Hopper_Black" }, { "type": "put", "url": "/api/cm/hopper_black/{id}", "title": "Update an existing Hopper Black", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/hopper_black/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateHopper_Black", "group": "Cm_Hopper_Black", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmHopperBlack/index.js", "groupTitle": "Cm_Hopper_Black" }, { "type": "get", "url": "/api/cm/hopper_final/describe", "title": "Gets table info about HopperFinal", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/hopper_final/describe -v -u {name}:{password}", "type": "json" } ], "name": "DescribeHopperFinal", "group": "Cm_Hopper_Final", "description": "

Motion will return a HTTP status code 200 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmHopperFinal/index.js", "groupTitle": "Cm_Hopper_Final" }, { "type": "get", "url": "/api/cm/hopper_final", "title": "Gets a list of HopperFinal", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/hopper_final -v -u {name}:{password}", "type": "json" } ], "name": "GetHopperFinal", "group": "Cm_Hopper_Final", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/cm/hopper_final?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/cm/hopper_final?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/cm/hopper_final?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/cm/hopper_final?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/cm/hopper_final?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/cmHopperFinal/index.js", "groupTitle": "Cm_Hopper_Final" }, { "type": "get", "url": "/api/cm/hopper_final/{id}", "title": "Gets a single HopperFinal", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/hopper_final/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowHopperFinal", "group": "Cm_Hopper_Final", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmHopperFinal/index.js", "groupTitle": "Cm_Hopper_Final" }, { "type": "post", "url": "/api/cm/hopper_final/checkContactHopper", "title": "Check if contact is in hopper", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/hopper_final/checkContactHopper -d '{\"VoiceQueueId\": \"VoiceQueueId\", \"CampaignId\": \"CampaignId\", \"ContactId\": \"ContactId\"}' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "_checkContactHopper", "group": "Cm_Hopper_Final", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmHopperFinal/index.js", "groupTitle": "Cm_Hopper_Final" }, { "type": "get", "url": "/api/cm/hopper_final/campaign/countAttributes/{id}", "title": "Return number contacts for attributes", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/hopper_final/campaign/countAttributes/{id} -d '{\"disposition\": \"OK\"}' -v -u {name}:{password} -X GET", "type": "json" } ], "name": "countContactsIvrCampaignHopperFinal", "group": "Cm_Hopper_Final", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmHopperFinal/index.js", "groupTitle": "Cm_Hopper_Final" }, { "type": "get", "url": "/api/cm/hopper_final/voice/queue/countAttributes/{id}", "title": "Return number contacts for attributes", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/hopper_final/voice/queue/countAttributes/{id} -d '{\"disposition\": \"OK\"}' -v -u {name}:{password} -X GET", "type": "json" } ], "name": "countContactsQueueCampaignHopperFinal", "group": "Cm_Hopper_Final", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmHopperFinal/index.js", "groupTitle": "Cm_Hopper_Final" }, { "type": "post", "url": "/api/cm/hopper_final/campaign/{id}", "title": "Move contacts in hopper", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/hopper_final/campaign/moveContacts/{id} -d '{\"state\": \"state\"}' -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "moveContactsIvrCampaignHopperFinal", "group": "Cm_Hopper_Final", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmHopperFinal/index.js", "groupTitle": "Cm_Hopper_Final" }, { "type": "post", "url": "/api/cm/hopper_final/voice/queue/{id}", "title": "Move contacts in hopper", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/hopper_final/voice/queue/moveContacts/{id} -d '{\"state\": \"state\"}' -H 'Content-Type: application/json' -v -u {name}:{password}", "type": "json" } ], "name": "moveContactsQueueCampaignHopperFinal", "group": "Cm_Hopper_Final", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmHopperFinal/index.js", "groupTitle": "Cm_Hopper_Final" }, { "type": "put", "url": "/api/cm/hopper_final/{id}", "title": "Update a single hopper final", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/hopper_final/{id} -d '{\"disposition\": \"OK\"}' -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "update", "group": "Cm_Hopper_Final", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmHopperFinal/index.js", "groupTitle": "Cm_Hopper_Final" }, { "type": "post", "url": "/api/cm/hopper_history", "title": "Creates a new HopperHistory", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/hopper_history -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateHopperHistory", "group": "Cm_Hopper_History", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "Integer", "optional": true, "field": "state", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "statedesc", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "scheduledat", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "countbusyretry", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "countcongestionretry", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "countnoanswerretry", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "countglobal", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "uniqueid", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "calleridnum", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "calleridname", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "starttime", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "responsetime", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "answertime", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "droptime", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "endtime", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "ringtime", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "holdtime", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "talktime", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "followuptime", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "dropreason", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "campaign", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "campaigntype", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "membername", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "reason", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "amd", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "fax", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "callback", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "callbackuniqueid", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "callbackat", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "recallme", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "editedat", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "edited", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmHopperHistory/index.js", "groupTitle": "Cm_Hopper_History" }, { "type": "get", "url": "/api/cm/hopper_history/describe", "title": "Gets table info about HopperHistory", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/hopper_history/describe -v -u {name}:{password}", "type": "json" } ], "name": "DescribeHopperHistory", "group": "Cm_Hopper_History", "description": "

Motion will return a HTTP status code 200 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmHopperHistory/index.js", "groupTitle": "Cm_Hopper_History" }, { "type": "get", "url": "/api/cm/hopper_history", "title": "Gets a list of HopperHistory", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/hopper_history -v -u {name}:{password}", "type": "json" } ], "name": "GetHopperHistory", "group": "Cm_Hopper_History", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/cm/hopper_history?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/cm/hopper_history?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/cm/hopper_history?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/cm/hopper_history?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/cm/hopper_history?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/cmHopperHistory/index.js", "groupTitle": "Cm_Hopper_History" }, { "type": "get", "url": "/api/cm/hopper_history/{id}", "title": "Gets a single HopperHistory", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/hopper_history/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowHopperHistory", "group": "Cm_Hopper_History", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmHopperHistory/index.js", "groupTitle": "Cm_Hopper_History" }, { "type": "put", "url": "/api/cm/hopper_history/{id}", "title": "Update a single hopper history", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/hopper_history/{id} -d '{\"disposition\": \"OK\"}' -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "update", "group": "Cm_Hopper_History", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmHopperHistory/index.js", "groupTitle": "Cm_Hopper_History" }, { "type": "delete", "url": "/api/cm/hopper/{id}", "title": "Delete Hopper", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/hopper/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "destroy", "group": "Cm_Hopper", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmHopper/index.js", "groupTitle": "Cm_Hopper" }, { "type": "get", "url": "/api/cm/hopper/opencontacts", "title": "Gets Open Contacts", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/hopper/opencontacts -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getOpenContacts", "group": "Cm_Hopper", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmHopper/index.js", "groupTitle": "Cm_Hopper" }, { "type": "post", "url": "/api/cm/hopper/preview", "title": "Gets Preview Dialer Contacts", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/hopper/preview -d '{\"hopperIds\": [1,2]}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getPreview", "group": "Cm_Hopper", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmHopper/index.js", "groupTitle": "Cm_Hopper" }, { "type": "put", "url": "/api/cm/hopper/{id}", "title": "Update an existing Hopper", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/hopper/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateHopper", "group": "Cm_Hopper", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmHopper/index.js", "groupTitle": "Cm_Hopper" }, { "type": "post", "url": "/api/cm/lists", "title": "Creates a new List", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/lists -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateLists", "group": "Cm_Lists", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmList/index.js", "groupTitle": "Cm_Lists" }, { "type": "delete", "url": "/api/cm/lists/{id}", "title": "Deletes a List", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/lists/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteLists", "group": "Cm_Lists", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmList/index.js", "groupTitle": "Cm_Lists" }, { "type": "get", "url": "/api/cm/lists/{id}/users", "title": "Gets agents from list", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/lists/{id}/users -v -u {name}:{password} -X GET", "type": "json" } ], "name": "GetAgents", "group": "Cm_Lists", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmList/index.js", "groupTitle": "Cm_Lists" }, { "type": "get", "url": "/api/cm/lists", "title": "Gets a list of Lists", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/lists -v -u {name}:{password}", "type": "json" } ], "name": "GetLists", "group": "Cm_Lists", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/cm/lists?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/cm/lists?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/cm/lists?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/cm/lists?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/cm/lists?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/cmList/index.js", "groupTitle": "Cm_Lists" }, { "type": "delete", "url": "/api/cm/lists/{id}/users", "title": "Removes agents from a list", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/lists/{id}/users?ids=1&ids=2 -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "RemoveAgents", "group": "Cm_Lists", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmList/index.js", "groupTitle": "Cm_Lists" }, { "type": "get", "url": "/api/cm/lists/{id}", "title": "Gets a single List", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/lists/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowLists", "group": "Cm_Lists", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmList/index.js", "groupTitle": "Cm_Lists" }, { "type": "post", "url": "/api/cm/lists/{id}/users", "title": "Adds agents to a list", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/lists/{id}/users -d '{\"ids\": [1,2]}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addAgents", "group": "Cm_Lists", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmList/index.js", "groupTitle": "Cm_Lists" }, { "type": "post", "url": "/api/cm/lists/{id}/contacts", "title": "Creates new contacts", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/lists/{id}/contacts -d '[{\"firstName\": \"John Doe\", \"email\": \"john.doe@xcally.com\", \"...\": \"...\"}]' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addContacts", "group": "Cm_Lists", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "firstName", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "lastName", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "tags", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "street", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "postalCode", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "city", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "country", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "dateOfBirth", "description": "" }, { "group": "Body", "type": "Text", "optional": true, "field": "description", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "phone", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "mobile", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "fax", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "email", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "url", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "facebook", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "twitter", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmList/index.js", "groupTitle": "Cm_Lists" }, { "type": "post", "url": "/api/cm/lists/{id}/fields", "title": "Creates a new custom field", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/lists/{id}/fields -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addCustomField", "group": "Cm_Lists", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmList/index.js", "groupTitle": "Cm_Lists" }, { "type": "post", "url": "/api/lists/{id}/dispositions", "title": "Creates a new sub disposition", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/lists/{id}/disposition -d '{\"name\": \"SATISFIED\"}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addDisposition", "group": "Cm_Lists", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmList/index.js", "groupTitle": "Cm_Lists" }, { "type": "get", "url": "/api/cm/lists/{id}/contacts", "title": "Gets List Contacts", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/lists/{id}/contacts -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getContacts", "group": "Cm_Lists", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmList/index.js", "groupTitle": "Cm_Lists" }, { "type": "get", "url": "/api/cm/lists/{id}/fields", "title": "Gets Custom Fields", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/lists/{id}/fields -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getCustomFields", "group": "Cm_Lists", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmList/index.js", "groupTitle": "Cm_Lists" }, { "type": "get", "url": "/api/cm/lists/{id}/dispositions", "title": "Gets Dispositions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/lists/{id}/dispositions -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getDispositions", "group": "Cm_Lists", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmList/index.js", "groupTitle": "Cm_Lists" }, { "type": "get", "url": "/api/cm/lists/{id}/contacts/csv", "title": "Gets CSV List Contacts", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/lists/{id}/contacts/csv -v -u {name}:{password} -X GET", "type": "json" } ], "name": "grunt", "group": "Cm_Lists", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmList/index.js", "groupTitle": "Cm_Lists" }, { "type": "put", "url": "/api/cm/lists/{id}", "title": "Update an existing List", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/lists/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateLists", "group": "Cm_Lists", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmList/index.js", "groupTitle": "Cm_Lists" }, { "type": "post", "url": "/api/cm/contacts/csv", "title": "Create new contacts by csv", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/contacts/csv -H 'Content-Type: multipart/form-data' -F 'file=@{filename}' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "uploadCsv", "group": "Cm_contacts", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmContact/index.js", "groupTitle": "Cm_contacts" }, { "type": "delete", "url": "/api/conditions/{id}", "title": "Deletes a Condition", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/conditions/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteConditions", "group": "Conditions", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/condition/index.js", "groupTitle": "Conditions" }, { "type": "put", "url": "/api/conditions/{id}", "title": "Update an existing Condition", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/conditions/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateConditions", "group": "Conditions", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/condition/index.js", "groupTitle": "Conditions" }, { "type": "post", "url": "/api/cm/custom_field", "title": "Create a new custom field", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/custom_field -d '{\"name\": \"mycf\", \"type\": \"text\"}' -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateCustomField", "group": "Custom_Fields", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmCustomField/index.js", "groupTitle": "Custom_Fields" }, { "type": "post", "url": "/api/dashboards/items", "title": "Create dasboard item", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/dashboards/items \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "Create", "group": "Dashboard_Items", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/dashboardItem/index.js", "groupTitle": "Dashboard_Items" }, { "type": "delete", "url": "/api/dashboards/items/{id}", "title": "Deletes a Dashboard Item", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/dashboards/items/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteDashboard_Items", "group": "Dashboard_Items", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/dashboardItem/index.js", "groupTitle": "Dashboard_Items" }, { "type": "get", "url": "/api/dashboards/items/{id}", "title": "Gets a single Dashboard Item", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/dashboards/items/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowDashboard_Items", "group": "Dashboard_Items", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/dashboardItem/index.js", "groupTitle": "Dashboard_Items" }, { "type": "put", "url": "/api/dashboards/items/{id}", "title": "Update an existing item", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/dashboards/items/{id} -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "Update", "group": "Dashboard_Items", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/dashboardItem/index.js", "groupTitle": "Dashboard_Items" }, { "type": "post", "url": "/api/dashboards/clone", "title": "Clone an existing Dashboard", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/dashboards/clone -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CloneDashboards", "group": "Dashboards", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/dashboard/index.js", "groupTitle": "Dashboards" }, { "type": "post", "url": "/api/dashboards", "title": "Creates a new Dashboard", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/dashboards -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateDashboards", "group": "Dashboards", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/dashboard/index.js", "groupTitle": "Dashboards" }, { "type": "delete", "url": "/api/dashboards/{id}", "title": "Deletes a Dashboard", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/dashboards/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteDashboards", "group": "Dashboards", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/dashboard/index.js", "groupTitle": "Dashboards" }, { "type": "get", "url": "/api/dashboards", "title": "Gets a list of Dashboards", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/dashboards -v -u {name}:{password}", "type": "json" } ], "name": "GetDashboards", "group": "Dashboards", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/dashboards?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/dashboards?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/dashboards?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/dashboards?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/dashboards?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/dashboard/index.js", "groupTitle": "Dashboards" }, { "type": "get", "url": "/api/dashboards/{id}", "title": "Gets a single Dashboard", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/dashboards/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowDashboards", "group": "Dashboards", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/dashboard/index.js", "groupTitle": "Dashboards" }, { "type": "post", "url": "/api/dashboards/{id}/items", "title": "Creates new item", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/dashboards/{id}/items -d '{\"type\": \"counter\", \"...\": \"...\"}]' -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addItem", "group": "Dashboards", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/dashboard/index.js", "groupTitle": "Dashboards" }, { "type": "put", "url": "/api/dashboards/{id}", "title": "Update an existing Dashboard", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/dashboards/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateDashboards", "group": "Dashboards", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/dashboard/index.js", "groupTitle": "Dashboards" }, { "type": "get", "url": "/api/dashboards/{id}/items", "title": "Gets items", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/dashboards/{id}/items -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getItems", "group": "Dashboars", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/dashboard/index.js", "groupTitle": "Dashboars" }, { "type": "post", "url": "/api/integrations/desk/accounts", "title": "Creates a new Desk Account", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/desk/accounts -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateDesk_Accounts", "group": "Desk_Accounts", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": true, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "username", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "remoteUri", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"basic\"" ], "optional": true, "field": "authType", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "password", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "consumerKey", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "consumerSecret", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "token", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "tokenSecret", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "serverUrl", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"integrationTab\"", "\"newTab\"" ], "optional": true, "field": "type", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intDeskAccount/index.js", "groupTitle": "Desk_Accounts" }, { "type": "delete", "url": "/api/integrations/desk/accounts/{id}", "title": "Deletes a Desk Account", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/desk/accounts/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteDesk_Accounts", "group": "Desk_Accounts", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intDeskAccount/index.js", "groupTitle": "Desk_Accounts" }, { "type": "get", "url": "/api/integrations/desk/accounts", "title": "Gets a list of Desk Accounts", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/desk/accounts -v -u {name}:{password}", "type": "json" } ], "name": "GetDesk_Accounts", "group": "Desk_Accounts", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/integrations/desk/accounts?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/integrations/desk/accounts?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/integrations/desk/accounts?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/integrations/desk/accounts?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/integrations/desk/accounts?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/intDeskAccount/index.js", "groupTitle": "Desk_Accounts" }, { "type": "get", "url": "/api/integrations/desk/accounts/{id}", "title": "Gets a single Desk Account", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/desk/accounts/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowDesk_Accounts", "group": "Desk_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intDeskAccount/index.js", "groupTitle": "Desk_Accounts" }, { "type": "post", "url": "/api/integrations/desk/accounts/{id}/configurations", "title": "Creates new configuration", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/desk/accounts/{id}/configurations -d '{\"name\": \"conf1\"}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addConfiguration", "group": "Desk_Accounts", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intDeskAccount/index.js", "groupTitle": "Desk_Accounts" }, { "type": "get", "url": "/api/integrations/desk/accounts/{id}/configurations", "title": "Gets account configurations", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/desk/accounts/{id}/configurations -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getConfigurations", "group": "Desk_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intDeskAccount/index.js", "groupTitle": "Desk_Accounts" }, { "type": "get", "url": "/api/integrations/desk/accounts/{id}/fields", "title": "Gets account fields", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/desk/accounts/{id}/fields -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getFields", "group": "Desk_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intDeskAccount/index.js", "groupTitle": "Desk_Accounts" }, { "type": "put", "url": "/api/integrations/desk/accounts/{id}", "title": "Update an existing Desk Account", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/desk/accounts/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateDesk_Accounts", "group": "Desk_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intDeskAccount/index.js", "groupTitle": "Desk_Accounts" }, { "type": "post", "url": "/api/integrations/desk/configurations", "title": "Creates a new Desk Configuration", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/desk/configurations -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateDesk_Configurations", "group": "Desk_Configurations", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": true, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intDeskConfiguration/index.js", "groupTitle": "Desk_Configurations" }, { "type": "delete", "url": "/api/integrations/desk/configurations/{id}", "title": "Deletes a Desk Configuration", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/desk/configurations/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteDesk_Configurations", "group": "Desk_Configurations", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intDeskConfiguration/index.js", "groupTitle": "Desk_Configurations" }, { "type": "get", "url": "/api/integrations/desk/configurations", "title": "Gets a list of Desk Configurations", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/desk/configurations -v -u {name}:{password}", "type": "json" } ], "name": "GetDesk_Configurations", "group": "Desk_Configurations", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/integrations/desk/configurations?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/integrations/desk/configurations?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/integrations/desk/configurations?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/integrations/desk/configurations?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/integrations/desk/configurations?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/intDeskConfiguration/index.js", "groupTitle": "Desk_Configurations" }, { "type": "get", "url": "/api/integrations/desk/configurations/{id}", "title": "Gets a single Desk Configuration", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/desk/configurations/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowDesk_Configurations", "group": "Desk_Configurations", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intDeskConfiguration/index.js", "groupTitle": "Desk_Configurations" }, { "type": "get", "url": "/api/integrations/desk/configurations/{id}/descriptions", "title": "Gets configurations descriptions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/desk/configurations/{id}/descriptions -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getDescriptions", "group": "Desk_Configurations", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intDeskConfiguration/index.js", "groupTitle": "Desk_Configurations" }, { "type": "get", "url": "/api/integrations/desk/configurations/{id}/fields", "title": "Gets configurations fields", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/desk/configurations/{id}/fields -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getFields", "group": "Desk_Configurations", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intDeskConfiguration/index.js", "groupTitle": "Desk_Configurations" }, { "type": "get", "url": "/api/integrations/desk/configurations/{id}/subjects", "title": "Gets configurations subjects", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/desk/configurations/{id}/subjects -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getSubjects", "group": "Desk_Configurations", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intDeskConfiguration/index.js", "groupTitle": "Desk_Configurations" }, { "type": "get", "url": "/api/integrations/desk/configurations/{id}/tags", "title": "Gets configurations tags", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/desk/configurations/{id}/tags -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getTags", "group": "Desk_Configurations", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intDeskConfiguration/index.js", "groupTitle": "Desk_Configurations" }, { "type": "post", "url": "/api/integrations/desk/configurations/{id}/tags", "title": "Sets new tags", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/desk/configurations/{id}/tags -d '{\"ids\": [1,12]}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "setTags", "group": "Desk_Configurations", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intDeskConfiguration/index.js", "groupTitle": "Desk_Configurations" }, { "type": "put", "url": "/api/integrations/desk/configurations/{id}", "title": "Update an existing Desk Configuration", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/desk/configurations/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateDesk_Configurations", "group": "Desk_Configurations", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intDeskConfiguration/index.js", "groupTitle": "Desk_Configurations" }, { "type": "post", "url": "/api/integrations/desk/fields", "title": "Creates a new Desk Field", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/desk/fields -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateDesk_Fields", "group": "Desk_Fields", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "allowedValues": [ "\"string\"", "\"variable\"", "\"customVariable\"", "\"keyValue\"" ], "optional": true, "field": "type", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "content", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "key", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"string\"", "\"variable\"", "\"customVariable\"" ], "optional": true, "field": "keyType", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "keyContent", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "idField", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "nameField", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "customField", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "variableName", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intDeskField/index.js", "groupTitle": "Desk_Fields" }, { "type": "delete", "url": "/api/integrations/desk/fields/{id}", "title": "Deletes a Desk Field", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/desk/fields/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteDesk_Fields", "group": "Desk_Fields", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intDeskField/index.js", "groupTitle": "Desk_Fields" }, { "type": "get", "url": "/api/integrations/desk/fields", "title": "Gets a list of Desk Fields", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/desk/fields -v -u {name}:{password}", "type": "json" } ], "name": "GetDesk_Fields", "group": "Desk_Fields", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/integrations/desk/fields?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/integrations/desk/fields?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/integrations/desk/fields?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/integrations/desk/fields?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/integrations/desk/fields?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/intDeskField/index.js", "groupTitle": "Desk_Fields" }, { "type": "get", "url": "/api/integrations/desk/fields/{id}", "title": "Gets a single Desk Field", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/desk/fields/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowDesk_Fields", "group": "Desk_Fields", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intDeskField/index.js", "groupTitle": "Desk_Fields" }, { "type": "put", "url": "/api/integrations/desk/fields/{id}", "title": "Update an existing Desk Field", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/desk/fields/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateDesk_Fields", "group": "Desk_Fields", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intDeskField/index.js", "groupTitle": "Desk_Fields" }, { "type": "post", "url": "/api/fax/accounts", "title": "Creates a new Account", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/accounts -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateAccounts", "group": "Fax_Accounts", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "ecm", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "headerinfo", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "localstationid", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"2400\"", "\"4800\"", "\"7200\"", "\"9600\"", "\"12000\"", "\"14400\"" ], "optional": true, "field": "minrate", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"2400\"", "\"4800\"", "\"7200\"", "\"9600\"", "\"12000\"", "\"14400\"" ], "optional": true, "field": "maxrate", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "modem", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "gateway", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "faxdetect", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "t38timeout", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"SIP\"", "\"IAX\"", "\"DADHI\"", "\"KHOMP\"" ], "optional": true, "field": "tech", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "key", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxAccount/index.js", "groupTitle": "Fax_Accounts" }, { "type": "delete", "url": "/api/fax/accounts/{id}", "title": "Deletes a Account", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/accounts/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteAccounts", "group": "Fax_Accounts", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxAccount/index.js", "groupTitle": "Fax_Accounts" }, { "type": "get", "url": "/api/fax/accounts/describe", "title": "Gets table info about Accounts", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/accounts/describe -v -u {name}:{password}", "type": "json" } ], "name": "DescribeAccounts", "group": "Fax_Accounts", "description": "

Motion will return a HTTP status code 200 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxAccount/index.js", "groupTitle": "Fax_Accounts" }, { "type": "get", "url": "/api/fax/accounts", "title": "Gets a list of Accounts", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/accounts -v -u {name}:{password}", "type": "json" } ], "name": "GetAccounts", "group": "Fax_Accounts", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/fax/accounts?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/fax/accounts?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/fax/accounts?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/fax/accounts?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/fax/accounts?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/faxAccount/index.js", "groupTitle": "Fax_Accounts" }, { "type": "delete", "url": "/api/fax/accounts/{id}/canned_answers", "title": "Removes canned answers from account", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/accounts/{id}/canned_answers?ids=1&ids=2 -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "RemoveAnswers", "group": "Fax_Accounts", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxAccount/index.js", "groupTitle": "Fax_Accounts" }, { "type": "get", "url": "/api/fax/accounts/{id}", "title": "Gets a single Account", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/accounts/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowAccounts", "group": "Fax_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxAccount/index.js", "groupTitle": "Fax_Accounts" }, { "type": "post", "url": "/api/fax/accounts/{id}/canned_answers", "title": "Creates new canned answer", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/accounts/{id}/canned_answers -d '{\"name\": \"vip\"}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addAnswer", "group": "Fax_Accounts", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "key", "description": "" }, { "group": "Body", "type": "Text", "optional": false, "field": "value", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxAccount/index.js", "groupTitle": "Fax_Accounts" }, { "type": "post", "url": "/api/fax/accounts/addaccountapplications", "title": "Creates new account and applications", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/accounts/addaccountapplications -d '[{\"name\": \"name\", \"...\": \"...\"}]' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addApplications", "group": "Fax_Accounts", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "Integer", "optional": false, "field": "priority", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "app", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "appdata", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "interval", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxAccount/index.js", "groupTitle": "Fax_Accounts" }, { "type": "post", "url": "/api/fax/accounts/{id}/applications", "title": "Creates new applications", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/accounts/{id}/applications -d '[{\"app\": \"queue\", \"...\": \"...\"}]' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addApplications", "group": "Fax_Accounts", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "Integer", "optional": false, "field": "priority", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "app", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "appdata", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "interval", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxAccount/index.js", "groupTitle": "Fax_Accounts" }, { "type": "post", "url": "/api/fax/accounts/{id}/dispositions", "title": "Creates new disposition", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/accounts/{id}/dispositions -d '{\"name\": \"Satisfied\"}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addDisposition", "group": "Fax_Accounts", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "name", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxAccount/index.js", "groupTitle": "Fax_Accounts" }, { "type": "post", "url": "/api/fax/accounts/{id}/dispositions", "title": "Creates many dispositions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/accounts/{id}/dispositions -d '[{\"name\": \"Satisfied\"}]' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addDispositions", "group": "Fax_Accounts", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "name", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxAccount/index.js", "groupTitle": "Fax_Accounts" }, { "type": "post", "url": "/api/fax/accounts/{id}/interactions", "title": "Creates new interactions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/accounts/{id}/interactions -d '[{\"host\": \"host\", \"username\": \"username\", \"password\": \"password\", \"...\": \"...\"}]' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addInteraction", "group": "Fax_Accounts", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "Boolean", "optional": true, "field": "closed", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "closedAt", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "disposition", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "note", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "read1stAt", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "fax", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"in\"", "\"out\"" ], "optional": false, "field": "firstMsgDirection", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "lastMsgAt", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"in\"", "\"out\"" ], "optional": false, "field": "lastMsgDirection", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxAccount/index.js", "groupTitle": "Fax_Accounts" }, { "type": "get", "url": "/api/fax/accounts/{id}/canned_answers", "title": "Gets account canned answers", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/accounts/{id}/canned_answers -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getAnswers", "group": "Fax_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxAccount/index.js", "groupTitle": "Fax_Accounts" }, { "type": "get", "url": "/api/fax/accounts/{id}/applications", "title": "Gets account pplications", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/accounts/{id}/applications -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getApplications", "group": "Fax_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxAccount/index.js", "groupTitle": "Fax_Accounts" }, { "type": "get", "url": "/api/fax/accounts/{id}/dispositions", "title": "Gets account dispositions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/accounts/{id}/dispositions -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getDispositions", "group": "Fax_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxAccount/index.js", "groupTitle": "Fax_Accounts" }, { "type": "get", "url": "/api/fax/accounts/{id}/interactions", "title": "Gets account interactions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/accounts/{id}/interactions -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getInteraction", "group": "Fax_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxAccount/index.js", "groupTitle": "Fax_Accounts" }, { "type": "get", "url": "/api/fax/accounts/{id}/messages", "title": "Gets account messages", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/accounts/{id}/messages -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getMessages", "group": "Fax_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxAccount/index.js", "groupTitle": "Fax_Accounts" }, { "type": "post", "url": "/api/fax/accounts/{id}/send", "title": "Send new fax", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/accounts/{id}/send -d '{from: '\"John Doe\" <123456>'}' -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "sendFax", "group": "Fax_Accounts", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxAccount/index.js", "groupTitle": "Fax_Accounts" }, { "type": "put", "url": "/api/fax/accounts/{id}", "title": "Update an existing Account", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/accounts/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateAccounts", "group": "Fax_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxAccount/index.js", "groupTitle": "Fax_Accounts" }, { "type": "post", "url": "/api/fax/accounts/updateaccountapplications", "title": "Update account and applications", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/accounts/updateaccountapplications -d '[{\"name\": \"name\", \"...\": \"...\"}]' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "updateApplications", "group": "Fax_Accounts", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "Integer", "optional": false, "field": "priority", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "app", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "appdata", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "interval", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxAccount/index.js", "groupTitle": "Fax_Accounts" }, { "type": "post", "url": "/api/fax/applications", "title": "Creates a new Application", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/applications -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateApplications", "group": "Fax_Applications", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "Integer", "optional": false, "field": "priority", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "app", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "appdata", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "interval", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxApplication/index.js", "groupTitle": "Fax_Applications" }, { "type": "delete", "url": "/api/fax/applications/{id}", "title": "Deletes a Application", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/applications/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteApplications", "group": "Fax_Applications", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxApplication/index.js", "groupTitle": "Fax_Applications" }, { "type": "get", "url": "/api/fax/applications", "title": "Gets a list of Applications", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/applications -v -u {name}:{password}", "type": "json" } ], "name": "GetApplications", "group": "Fax_Applications", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/fax/applications?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/fax/applications?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/fax/applications?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/fax/applications?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/fax/applications?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/faxApplication/index.js", "groupTitle": "Fax_Applications" }, { "type": "get", "url": "/api/fax/applications/{id}", "title": "Gets a single Application", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/applications/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowApplications", "group": "Fax_Applications", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxApplication/index.js", "groupTitle": "Fax_Applications" }, { "type": "put", "url": "/api/fax/applications/{id}", "title": "Update an existing Application", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/applications/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateApplications", "group": "Fax_Applications", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxApplication/index.js", "groupTitle": "Fax_Applications" }, { "type": "post", "url": "/api/fax/dispositions", "title": "Creates a new Disposition", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/dispositions -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateDispositions", "group": "Fax_Dispositions", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "name", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxDisposition/index.js", "groupTitle": "Fax_Dispositions" }, { "type": "delete", "url": "/api/fax/dispositions/{id}", "title": "Deletes a Disposition", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/dispositions/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteDispositions", "group": "Fax_Dispositions", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxDisposition/index.js", "groupTitle": "Fax_Dispositions" }, { "type": "get", "url": "/api/fax/dispositions/{id}", "title": "Gets a single Disposition", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/dispositions/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowDispositions", "group": "Fax_Dispositions", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxDisposition/index.js", "groupTitle": "Fax_Dispositions" }, { "type": "put", "url": "/api/fax/dispositions/{id}", "title": "Update an existing Disposition", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/dispositions/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateDispositions", "group": "Fax_Dispositions", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxDisposition/index.js", "groupTitle": "Fax_Dispositions" }, { "type": "post", "url": "/api/fax/interactions/{id}/tags", "title": "Add tags to the interaction", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/interaction/{id}/tags -d '{\"ids\": [1,2]}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "AddTags", "group": "Fax_Interactions", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxInteraction/index.js", "groupTitle": "Fax_Interactions" }, { "type": "post", "url": "/api/fax/interactions", "title": "Creates a new Interaction", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/interactions -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateInteractions", "group": "Fax_Interactions", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "Boolean", "optional": true, "field": "closed", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "closedAt", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "disposition", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "note", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "read1stAt", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "fax", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"in\"", "\"out\"" ], "optional": false, "field": "firstMsgDirection", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "lastMsgAt", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"in\"", "\"out\"" ], "optional": false, "field": "lastMsgDirection", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxInteraction/index.js", "groupTitle": "Fax_Interactions" }, { "type": "delete", "url": "/api/fax/interactions/{id}", "title": "Deletes a Interaction", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/interactions/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteInteractions", "group": "Fax_Interactions", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxInteraction/index.js", "groupTitle": "Fax_Interactions" }, { "type": "get", "url": "/api/fax/interactions/describe", "title": "Gets table info about Interactions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/interactions/describe -v -u {name}:{password}", "type": "json" } ], "name": "DescribeInteractions", "group": "Fax_Interactions", "description": "

Motion will return a HTTP status code 200 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxInteraction/index.js", "groupTitle": "Fax_Interactions" }, { "type": "get", "url": "/api/fax/interactions", "title": "Gets a list of Interactions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/interactions -v -u {name}:{password}", "type": "json" } ], "name": "GetInteractions", "group": "Fax_Interactions", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/fax/interactions?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/fax/interactions?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/fax/interactions?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/fax/interactions?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/fax/interactions?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/faxInteraction/index.js", "groupTitle": "Fax_Interactions" }, { "type": "delete", "url": "/api/fax/interactions/{id}/tags", "title": "Removes tags from interaction", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/interactions/{id}/tags?ids=1&ids=2 -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "RemoveTags", "group": "Fax_Interactions", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxInteraction/index.js", "groupTitle": "Fax_Interactions" }, { "type": "get", "url": "/api/fax/interactions/{id}", "title": "Gets a single Interaction", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/interactions/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowInteractions", "group": "Fax_Interactions", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxInteraction/index.js", "groupTitle": "Fax_Interactions" }, { "type": "post", "url": "/api/fax/interactions/{id}/messages", "title": "Creates new messages", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/interactions/{id}/messages -d '[{\"to\": \"+3901119886500\", \"...\": \"...\"}]' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addMessage", "group": "Fax_Interactions", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "Text", "optional": false, "field": "body", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "read", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"in\"", "\"out\"" ], "optional": false, "field": "direction", "description": "" }, { "group": "Body", "type": "Text", "optional": true, "field": "failMessage", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "readAt", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxInteraction/index.js", "groupTitle": "Fax_Interactions" }, { "type": "get", "url": "/api/fax/interactions/{id}/messages", "title": "Gets interaction messages", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/interactions/{id}/messages -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getMessages", "group": "Fax_Interactions", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxInteraction/index.js", "groupTitle": "Fax_Interactions" }, { "type": "put", "url": "/api/fax/interactions/{id}", "title": "Update an existing Interaction", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/interactions/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateInteractions", "group": "Fax_Interactions", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxInteraction/index.js", "groupTitle": "Fax_Interactions" }, { "type": "delete", "url": "/api/fax/messages/{id}", "title": "Deletes a Message", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/messages/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteMessages", "group": "Fax_Messages", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxMessage/index.js", "groupTitle": "Fax_Messages" }, { "type": "get", "url": "/api/fax/messages/describe", "title": "Gets table info about Messages", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/messages/describe -v -u {name}:{password}", "type": "json" } ], "name": "DescribeMessages", "group": "Fax_Messages", "description": "

Motion will return a HTTP status code 200 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxMessage/index.js", "groupTitle": "Fax_Messages" }, { "type": "get", "url": "/api/fax/messages", "title": "Gets a list of Messages", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/messages -v -u {name}:{password}", "type": "json" } ], "name": "GetMessages", "group": "Fax_Messages", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/fax/messages?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/fax/messages?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/fax/messages?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/fax/messages?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/fax/messages?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/faxMessage/index.js", "groupTitle": "Fax_Messages" }, { "type": "get", "url": "/api/fax/messages/{id}", "title": "Gets a single Message", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/messages/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowMessages", "group": "Fax_Messages", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxMessage/index.js", "groupTitle": "Fax_Messages" }, { "type": "put", "url": "/api/fax/messages/{id}/accept", "title": "Accepts message", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/messages/{id}/accept \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "acceptMessage", "group": "Fax_Messages", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxMessage/index.js", "groupTitle": "Fax_Messages" }, { "type": "put", "url": "/api/fax/messages/{id}/reject", "title": "Rejects message", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/messages/{id}/reject \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "rejectMessage", "group": "Fax_Messages", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxMessage/index.js", "groupTitle": "Fax_Messages" }, { "type": "post", "url": "/api/fax/messages", "title": "Create message and send Fax", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/messages/{id}/reject \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "rejectMessage", "group": "Fax_Messages", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxMessage/index.js", "groupTitle": "Fax_Messages" }, { "type": "put", "url": "/api/fax/messages/{id}", "title": "Update an existing Message", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/messages/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateMessages", "group": "Fax_Messages", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxMessage/index.js", "groupTitle": "Fax_Messages" }, { "type": "post", "url": "/api/fax/reports/queue", "title": "Creates a new Fax Queue Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/reports/queue -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateFax_Queue_Reports", "group": "Fax_Queue_Reports", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "uniqueid", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "from", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "joinAt", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "leaveAt", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "acceptAt", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "exitAt", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "reason", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxQueueReport/index.js", "groupTitle": "Fax_Queue_Reports" }, { "type": "delete", "url": "/api/fax/reports/queue/{id}", "title": "Deletes a Fax Queue Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/reports/queue/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteFax_Queue_Reports", "group": "Fax_Queue_Reports", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxQueueReport/index.js", "groupTitle": "Fax_Queue_Reports" }, { "type": "get", "url": "/api/fax/reports/queue/describe", "title": "Gets table info about Fax Queue Reports", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/reports/queue/describe -v -u {name}:{password}", "type": "json" } ], "name": "DescribeFax_Queue_Reports", "group": "Fax_Queue_Reports", "description": "

Motion will return a HTTP status code 200 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxQueueReport/index.js", "groupTitle": "Fax_Queue_Reports" }, { "type": "get", "url": "/api/fax/reports/queue", "title": "Gets a list of Fax Queue Reports", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/reports/queue -v -u {name}:{password}", "type": "json" } ], "name": "GetFax_Queue_Reports", "group": "Fax_Queue_Reports", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/fax/reports/queue?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/fax/reports/queue?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/fax/reports/queue?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/fax/reports/queue?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/fax/reports/queue?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/faxQueueReport/index.js", "groupTitle": "Fax_Queue_Reports" }, { "type": "get", "url": "/api/fax/reports/queue/{id}", "title": "Gets a single Fax Queue Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/reports/queue/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowFax_Queue_Reports", "group": "Fax_Queue_Reports", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxQueueReport/index.js", "groupTitle": "Fax_Queue_Reports" }, { "type": "put", "url": "/api/fax/reports/queue/{id}", "title": "Update an existing Fax Queue Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/reports/queue/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateFax_Queue_Reports", "group": "Fax_Queue_Reports", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxQueueReport/index.js", "groupTitle": "Fax_Queue_Reports" }, { "type": "post", "url": "/api/fax/queues/{id}/users", "title": "Add agents to a queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/queues/{id}/users -d '{\"ids\": [1,2], \"penalty\": 2}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "AddAgents", "group": "Fax_Queues", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxQueue/index.js", "groupTitle": "Fax_Queues" }, { "type": "post", "url": "/api/fax/queues/{id}/teams", "title": "Add teams to a queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/queues/{id}/teams -d '{\"ids\": [1,2]}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "AddTeams", "group": "Fax_Queues", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxQueue/index.js", "groupTitle": "Fax_Queues" }, { "type": "post", "url": "/api/fax/queues", "title": "Creates a new Queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/queues -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateQueues", "group": "Fax_Queues", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" }, { "group": "Body", "type": "Integer", "optional": false, "field": "timeout", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"rrmemory\"", "\"beepall\"", "\"roundrobin\"" ], "optional": false, "field": "strategy", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "lastAgent", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxQueue/index.js", "groupTitle": "Fax_Queues" }, { "type": "delete", "url": "/api/fax/queues/{id}", "title": "Deletes a Queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/queues/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteQueues", "group": "Fax_Queues", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxQueue/index.js", "groupTitle": "Fax_Queues" }, { "type": "get", "url": "/api/fax/queues/describe", "title": "Gets table info about Queues", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/queues/describe -v -u {name}:{password}", "type": "json" } ], "name": "DescribeQueues", "group": "Fax_Queues", "description": "

Motion will return a HTTP status code 200 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxQueue/index.js", "groupTitle": "Fax_Queues" }, { "type": "get", "url": "/api/fax/queues/{id}/users", "title": "Gets queue agents", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/queues/{id}/users -v -u {name}:{password} -X POST", "type": "json" } ], "name": "GetAgents", "group": "Fax_Queues", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxQueue/index.js", "groupTitle": "Fax_Queues" }, { "type": "get", "url": "/api/fax/queues/{id}/members", "title": "GetMembers", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/queues/{id}/members -v -u {name}:{password}", "type": "json" } ], "name": "GetMembers", "group": "Fax_Queues", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxQueue/index.js", "groupTitle": "Fax_Queues" }, { "type": "get", "url": "/api/fax/queues", "title": "Gets a list of Queues", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/queues -v -u {name}:{password}", "type": "json" } ], "name": "GetQueues", "group": "Fax_Queues", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/fax/queues?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/fax/queues?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/fax/queues?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/fax/queues?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/fax/queues?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/faxQueue/index.js", "groupTitle": "Fax_Queues" }, { "type": "get", "url": "/api/fax/queues/{id}/teams", "title": "Gets queues list", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/queues/{id}/teams -v -u {name}:{password}", "type": "json" } ], "name": "GetTeams", "group": "Fax_Queues", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxQueue/index.js", "groupTitle": "Fax_Queues" }, { "type": "delete", "url": "/api/fax/queues/{id}/users", "title": "Removes agents from a queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/queues/{id}/users?ids=1&ids=2 -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "RemoveAgents", "group": "Fax_Queues", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxQueue/index.js", "groupTitle": "Fax_Queues" }, { "type": "get", "url": "/api/fax/queues/{id}", "title": "Gets a single Queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/queues/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowQueues", "group": "Fax_Queues", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxQueue/index.js", "groupTitle": "Fax_Queues" }, { "type": "put", "url": "/api/fax/queues/{id}", "title": "Update an existing Queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/queues/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateQueues", "group": "Fax_Queues", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxQueue/index.js", "groupTitle": "Fax_Queues" }, { "type": "post", "url": "/api/integrations/freshdesk/accounts", "title": "Creates a new Freshdesk Account", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/freshdesk/accounts -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateFreshdesk_Accounts", "group": "Freshdesk_Accounts", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": true, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "username", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "apiKey", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "remoteUri", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "serverUrl", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intFreshdeskAccount/index.js", "groupTitle": "Freshdesk_Accounts" }, { "type": "delete", "url": "/api/integrations/freshdesk/accounts/{id}", "title": "Deletes a Freshdesk Account", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/freshdesk/accounts/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteFreshdesk_Accounts", "group": "Freshdesk_Accounts", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intFreshdeskAccount/index.js", "groupTitle": "Freshdesk_Accounts" }, { "type": "get", "url": "/api/integrations/freshdesk/accounts", "title": "Gets a list of Freshdesk Accounts", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/freshdesk/accounts -v -u {name}:{password}", "type": "json" } ], "name": "GetFreshdesk_Accounts", "group": "Freshdesk_Accounts", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/integrations/freshdesk/accounts?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/integrations/freshdesk/accounts?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/integrations/freshdesk/accounts?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/integrations/freshdesk/accounts?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/integrations/freshdesk/accounts?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/intFreshdeskAccount/index.js", "groupTitle": "Freshdesk_Accounts" }, { "type": "get", "url": "/api/integrations/freshdesk/accounts/{id}", "title": "Gets a single Freshdesk Account", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/freshdesk/accounts/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowFreshdesk_Accounts", "group": "Freshdesk_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intFreshdeskAccount/index.js", "groupTitle": "Freshdesk_Accounts" }, { "type": "post", "url": "/api/integrations/freshdesk/accounts/{id}/configurations", "title": "Creates new configuration", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/freshdesk/accounts/{id}/configurations -d '{\"name\": \"conf1\"}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addConfiguration", "group": "Freshdesk_Accounts", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intFreshdeskAccount/index.js", "groupTitle": "Freshdesk_Accounts" }, { "type": "get", "url": "/api/integrations/freshdesk/accounts/{id}/configurations", "title": "Gets account configurations", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/freshdesk/accounts/{id}/configurations -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getConfigurations", "group": "Freshdesk_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intFreshdeskAccount/index.js", "groupTitle": "Freshdesk_Accounts" }, { "type": "get", "url": "/api/integrations/freshdesk/accounts/{id}/fields", "title": "Gets account fields", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/freshdesk/accounts/{id}/fields -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getFields", "group": "Freshdesk_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intFreshdeskAccount/index.js", "groupTitle": "Freshdesk_Accounts" }, { "type": "put", "url": "/api/integrations/freshdesk/accounts/{id}", "title": "Update an existing Freshdesk Account", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/freshdesk/accounts/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateFreshdesk_Accounts", "group": "Freshdesk_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intFreshdeskAccount/index.js", "groupTitle": "Freshdesk_Accounts" }, { "type": "post", "url": "/api/integrations/freshdesk/configurations", "title": "Creates a new Freshdesk Configuration", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/freshdesk/configurations -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateFreshdesk_Configurations", "group": "Freshdesk_Configurations", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": true, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intFreshdeskConfiguration/index.js", "groupTitle": "Freshdesk_Configurations" }, { "type": "delete", "url": "/api/integrations/freshdesk/configurations/{id}", "title": "Deletes a Freshdesk Configuration", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/freshdesk/configurations/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteFreshdesk_Configurations", "group": "Freshdesk_Configurations", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intFreshdeskConfiguration/index.js", "groupTitle": "Freshdesk_Configurations" }, { "type": "get", "url": "/api/integrations/freshdesk/configurations", "title": "Gets a list of Freshdesk Configurations", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/freshdesk/configurations -v -u {name}:{password}", "type": "json" } ], "name": "GetFreshdesk_Configurations", "group": "Freshdesk_Configurations", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/integrations/freshdesk/configurations?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/integrations/freshdesk/configurations?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/integrations/freshdesk/configurations?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/integrations/freshdesk/configurations?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/integrations/freshdesk/configurations?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/intFreshdeskConfiguration/index.js", "groupTitle": "Freshdesk_Configurations" }, { "type": "get", "url": "/api/integrations/freshdesk/configurations/{id}", "title": "Gets a single Freshdesk Configuration", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/freshdesk/configurations/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowFreshdesk_Configurations", "group": "Freshdesk_Configurations", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intFreshdeskConfiguration/index.js", "groupTitle": "Freshdesk_Configurations" }, { "type": "get", "url": "/api/integrations/freshdesk/configurations/{id}/descriptions", "title": "Gets configurations descriptions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/freshdesk/configurations/{id}/descriptions -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getDescriptions", "group": "Freshdesk_Configurations", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intFreshdeskConfiguration/index.js", "groupTitle": "Freshdesk_Configurations" }, { "type": "get", "url": "/api/integrations/freshdesk/configurations/{id}/fields", "title": "Gets configurations fields", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/freshdesk/configurations/{id}/fields -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getFields", "group": "Freshdesk_Configurations", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intFreshdeskConfiguration/index.js", "groupTitle": "Freshdesk_Configurations" }, { "type": "get", "url": "/api/integrations/freshdesk/configurations/{id}/subjects", "title": "Gets configurations subjects", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/freshdesk/configurations/{id}/subjects -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getSubjects", "group": "Freshdesk_Configurations", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intFreshdeskConfiguration/index.js", "groupTitle": "Freshdesk_Configurations" }, { "type": "get", "url": "/api/integrations/freshdesk/configurations/{id}/tags", "title": "Gets configurations tags", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/freshdesk/configurations/{id}/tags -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getTags", "group": "Freshdesk_Configurations", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intFreshdeskConfiguration/index.js", "groupTitle": "Freshdesk_Configurations" }, { "type": "post", "url": "/api/integrations/freshdesk/configurations/{id}/tags", "title": "Sets new tags", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/freshdesk/configurations/{id}/tags -d '{\"ids\": [1,12]}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "setTags", "group": "Freshdesk_Configurations", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intFreshdeskConfiguration/index.js", "groupTitle": "Freshdesk_Configurations" }, { "type": "put", "url": "/api/integrations/freshdesk/configurations/{id}", "title": "Update an existing Freshdesk Configuration", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/freshdesk/configurations/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateFreshdesk_Configurations", "group": "Freshdesk_Configurations", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intFreshdeskConfiguration/index.js", "groupTitle": "Freshdesk_Configurations" }, { "type": "post", "url": "/api/integrations/freshdesk/fields", "title": "Creates a new Freshdesk Field", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/freshdesk/fields -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateFreshdesk_Fields", "group": "Freshdesk_Fields", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "allowedValues": [ "\"string\"", "\"variable\"", "\"customVariable\"", "\"keyValue\"" ], "optional": true, "field": "type", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "content", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "key", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"string\"", "\"variable\"", "\"customVariable\"" ], "optional": true, "field": "keyType", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "keyContent", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "idField", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "nameField", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "customField", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "variableName", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intFreshdeskField/index.js", "groupTitle": "Freshdesk_Fields" }, { "type": "delete", "url": "/api/integrations/freshdesk/fields/{id}", "title": "Deletes a Freshdesk Field", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/freshdesk/fields/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteFreshdesk_Fields", "group": "Freshdesk_Fields", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intFreshdeskField/index.js", "groupTitle": "Freshdesk_Fields" }, { "type": "get", "url": "/api/integrations/freshdesk/fields", "title": "Gets a list of Freshdesk Fields", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/freshdesk/fields -v -u {name}:{password}", "type": "json" } ], "name": "GetFreshdesk_Fields", "group": "Freshdesk_Fields", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/integrations/freshdesk/fields?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/integrations/freshdesk/fields?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/integrations/freshdesk/fields?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/integrations/freshdesk/fields?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/integrations/freshdesk/fields?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/intFreshdeskField/index.js", "groupTitle": "Freshdesk_Fields" }, { "type": "get", "url": "/api/integrations/freshdesk/fields/{id}", "title": "Gets a single Freshdesk Field", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/freshdesk/fields/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowFreshdesk_Fields", "group": "Freshdesk_Fields", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intFreshdeskField/index.js", "groupTitle": "Freshdesk_Fields" }, { "type": "put", "url": "/api/integrations/freshdesk/fields/{id}", "title": "Update an existing Freshdesk Field", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/freshdesk/fields/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateFreshdesk_Fields", "group": "Freshdesk_Fields", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intFreshdeskField/index.js", "groupTitle": "Freshdesk_Fields" }, { "type": "post", "url": "/api/campaigns/{id}/blacklists", "title": "Add blacklists to an IVR campaign", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/campaigns/{id}/blacklists -d '{\"ids\": [1,2]}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "AddBlackLists", "group": "IVR_Campaigns", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/campaign/index.js", "groupTitle": "IVR_Campaigns" }, { "type": "post", "url": "/api/campaigns/{id}/lists", "title": "Add lists to an IVR campaign", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/campaigns/{id}/lists -d '{\"ids\": [1,2]}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "AddLists", "group": "IVR_Campaigns", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/campaign/index.js", "groupTitle": "IVR_Campaigns" }, { "type": "post", "url": "/api/campaigns", "title": "Creates a new IVR Campaign", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/campaigns -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateIVR_Campaigns", "group": "IVR_Campaigns", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "name", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"ivr\"" ], "optional": false, "field": "type", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "active", "description": "

Active/Disactive Campaign

" }, { "group": "Body", "type": "Integer", "optional": true, "field": "limitCalls", "description": "

Max 200 calls.

" }, { "group": "Body", "type": "String", "optional": true, "field": "dialOriginateCallerIdName", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "dialOriginateCallerIdNumber", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "dialOriginateTimeout", "description": "

Originate Timeout Seconds (min:1, max:999)

" }, { "group": "Body", "type": "Integer", "optional": true, "field": "dialCongestionMaxRetry", "description": "

#Congestion Retry (min:1, max:999)

" }, { "group": "Body", "type": "Integer", "optional": true, "field": "dialCongestionRetryFrequency", "description": "

Congestion Retry Frequency Minutes (min:1, max:99999)

" }, { "group": "Body", "type": "Integer", "optional": true, "field": "dialBusyMaxRetry", "description": "

#Busy Retry (min:1, max:999)

" }, { "group": "Body", "type": "Integer", "optional": true, "field": "dialBusyRetryFrequency", "description": "

Busy Retry Frequency Minutes (min:1, max:99999)

" }, { "group": "Body", "type": "Integer", "optional": true, "field": "dialNoAnswerMaxRetry", "description": "

#NoAnswer Retry (min:1, max:999)

" }, { "group": "Body", "type": "Integer", "optional": true, "field": "dialNoAnswerRetryFrequency", "description": "

NoAnswer Retry Frequency Minutes (min:1, max:99999)

" }, { "group": "Body", "type": "Integer", "optional": true, "field": "dialGlobalMaxRetry", "description": "

#Global Max Retry (min:1, max:999)

" }, { "group": "Body", "type": "String", "optional": true, "field": "dialTimezone", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "dialGlobalInterval", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"always\"", "\"never\"", "\"onlyIfOpen\"" ], "optional": true, "field": "dialCheckDuplicateType", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "dialAMDActive", "description": "

Active/Disactive AMD

" }, { "group": "Body", "type": "Integer", "optional": true, "field": "dialAMDInitialSilence", "description": "

#AMD Initial Silence

" }, { "group": "Body", "type": "Integer", "optional": true, "field": "dialAMDGreeting", "description": "

#AMD Greeting

" }, { "group": "Body", "type": "Integer", "optional": true, "field": "dialAMDAfterGreetingSilence", "description": "

#AMD After Greeting Silence

" }, { "group": "Body", "type": "Integer", "optional": true, "field": "dialAMDTotalAnalysisTime", "description": "

#AMD Total Analysis Time

" }, { "group": "Body", "type": "Integer", "optional": true, "field": "dialAMDMinWordLength", "description": "

#AMD Min Word Length

" }, { "group": "Body", "type": "Integer", "optional": true, "field": "dialAMDBetweenWordsSilence", "description": "

#AMD Between Words Silence

" }, { "group": "Body", "type": "Integer", "optional": true, "field": "dialAMDMaximumNumberOfWords", "description": "

#AMD Maximum Number Of Words

" }, { "group": "Body", "type": "Integer", "optional": true, "field": "dialAMDSilenceThreshold", "description": "

#AMD Silence Threshold (min:0, max:32767)

" }, { "group": "Body", "type": "Integer", "optional": true, "field": "dialAMDMaximumWordLength", "description": "

#AMD Maximum Word Length

" }, { "group": "Body", "type": "String", "allowedValues": [ "\"DESC\"", "\"ASC\"" ], "optional": true, "field": "dialOrderByScheduledAt", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/campaign/index.js", "groupTitle": "IVR_Campaigns" }, { "type": "delete", "url": "/api/campaigns/{id}", "title": "Deletes a IVR Campaign", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/campaigns/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteIVR_Campaigns", "group": "IVR_Campaigns", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/campaign/index.js", "groupTitle": "IVR_Campaigns" }, { "type": "get", "url": "/api/campaigns/{id}/blacklists", "title": "Get IVR campaign blacklists", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/campaigns/{id}/blacklists -v -u {name}:{password} -X GET", "type": "json" } ], "name": "GetBlackLists", "group": "IVR_Campaigns", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/campaign/index.js", "groupTitle": "IVR_Campaigns" }, { "type": "get", "url": "/api/campaigns/{id}/finals", "title": "Gets IVR campaign hopper finals", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/campaigns/{id}/hopper_finals -v -u {name}:{password} -X GET", "type": "json" } ], "name": "GetHopperFinals", "group": "IVR_Campaigns", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/campaign/index.js", "groupTitle": "IVR_Campaigns" }, { "type": "get", "url": "/api/campaigns/{id}/hopper_histories", "title": "Gets IVR campaign hopper histories", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/campaigns/{id}/hopper_histories -v -u {name}:{password} -X GET", "type": "json" } ], "name": "GetHopperHistories", "group": "IVR_Campaigns", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/campaign/index.js", "groupTitle": "IVR_Campaigns" }, { "type": "get", "url": "/api/campaigns/{id}/hoppers", "title": "Gets IVR campaign hoppers", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/campaigns/{id}/hoppers -v -u {name}:{password} -X GET", "type": "json" } ], "name": "GetHoppers", "group": "IVR_Campaigns", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/campaign/index.js", "groupTitle": "IVR_Campaigns" }, { "type": "get", "url": "/api/campaigns", "title": "Gets a list of IVR Campaigns", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/campaigns -v -u {name}:{password}", "type": "json" } ], "name": "GetIVR_Campaigns", "group": "IVR_Campaigns", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/campaigns?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/campaigns?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/campaigns?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/campaigns?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/campaigns?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/campaign/index.js", "groupTitle": "IVR_Campaigns" }, { "type": "get", "url": "/api/campaigns/{id}/lists", "title": "Get IVR campaign lists", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/campaigns/{id}/lists -v -u {name}:{password} -X GET", "type": "json" } ], "name": "GetLists", "group": "IVR_Campaigns", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/campaign/index.js", "groupTitle": "IVR_Campaigns" }, { "type": "delete", "url": "/api/campaigns/{id}/blacklists", "title": "Remove blacklists from an IVR Campaign", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/campaigns/{id}/blacklists?ids=1&ids=2 -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "RemoveBlackLists", "group": "IVR_Campaigns", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/campaign/index.js", "groupTitle": "IVR_Campaigns" }, { "type": "delete", "url": "/api/campaigns/{id}/lists", "title": "Remove lists from an IVR Campaign", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/campaigns/{id}/lists?ids=1&ids=2 -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "RemoveLists", "group": "IVR_Campaigns", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/campaign/index.js", "groupTitle": "IVR_Campaigns" }, { "type": "get", "url": "/api/campaigns/{id}", "title": "Gets a single IVR Campaign", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/campaigns/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowIVR_Campaigns", "group": "IVR_Campaigns", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/campaign/index.js", "groupTitle": "IVR_Campaigns" }, { "type": "get", "url": "/api/campaigns/{id}/blacks", "title": "Gets IVR campaign hopper blacks", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/campaigns/{id}/hopper_black -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getHopperBlacks", "group": "IVR_Campaigns", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/campaign/index.js", "groupTitle": "IVR_Campaigns" }, { "type": "put", "url": "/api/campaigns/{id}", "title": "Update an existing IVR Campaign", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/campaigns/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateIVR_Campaigns", "group": "IVR_Campaigns", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/campaign/index.js", "groupTitle": "IVR_Campaigns" }, { "type": "post", "url": "/api/integrations/reports", "title": "Creates a new Integration Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/reports -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateIntegration_Reports", "group": "Integration_Reports", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": true, "field": "integration", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "eventChannel", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "exitStatus", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "ticketId", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "integrationId", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "contacts", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "uniqueid", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "calleridnum", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "calleridname", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "queue", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "interface", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "membername", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "agentcalledAt", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "agentconnectAt", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "holdtime", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "agentcomplete", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "agentcompleteAt", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "talktime", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "agentacw", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "acwtime", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "reason", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "agentringnoanswer", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "agentringnoanswerAt", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "agentdump", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "agentdumpAt", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "lastevent", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "channel", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "channelstate", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "channelstatedesc", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "connectedlinenum", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "connectedlinename", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "language", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "accountcode", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "context", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "exten", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "priority", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "destchannel", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "destchannelstate", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "destchannelstatedesc", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "destcalleridnum", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "destcalleridname", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "destconnectedlinenum", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "destconnectedlinename", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "destlanguage", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "destaccountcode", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "destcontext", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "destexten", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "destpriority", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "destuniqueid", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "messageId", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "inReplyTo", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "subject", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "from", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "to", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "cc", "description": "" }, { "group": "Body", "type": "Text", "optional": true, "field": "attachment", "description": "" }, { "group": "Body", "type": "Text", "optional": true, "field": "html", "description": "" }, { "group": "Body", "type": "Text", "optional": true, "field": "text", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"SENT\"", "\"SENDING\"", "\"RECEIVED\"", "\"FAILED\"" ], "optional": true, "field": "status", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "url", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "app", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "appdata", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "projectId", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/integrationReport/index.js", "groupTitle": "Integration_Reports" }, { "type": "delete", "url": "/api/integrations/reports/{id}", "title": "Deletes a Integration Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/reports/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteIntegration_Reports", "group": "Integration_Reports", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/integrationReport/index.js", "groupTitle": "Integration_Reports" }, { "type": "get", "url": "/api/integrations/reports/describe", "title": "Gets table info about Integration Reports", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/reports/describe -v -u {name}:{password}", "type": "json" } ], "name": "DescribeIntegration_Reports", "group": "Integration_Reports", "description": "

Motion will return a HTTP status code 200 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/integrationReport/index.js", "groupTitle": "Integration_Reports" }, { "type": "get", "url": "/api/integrations/reports", "title": "Gets a list of Integration Reports", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/reports -v -u {name}:{password}", "type": "json" } ], "name": "GetIntegration_Reports", "group": "Integration_Reports", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/integrations/reports?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/integrations/reports?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/integrations/reports?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/integrations/reports?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/integrations/reports?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/integrationReport/index.js", "groupTitle": "Integration_Reports" }, { "type": "get", "url": "/api/integrations/reports/{id}", "title": "Gets a single Integration Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/reports/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowIntegration_Reports", "group": "Integration_Reports", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/integrationReport/index.js", "groupTitle": "Integration_Reports" }, { "type": "put", "url": "/api/integrations/reports/{id}", "title": "Update an existing Integration Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/reports/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateIntegration_Reports", "group": "Integration_Reports", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/integrationReport/index.js", "groupTitle": "Integration_Reports" }, { "type": "post", "url": "/api/intervals", "title": "Creates a new Interval", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/intervals -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateIntervals", "group": "Intervals", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": true, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "interval", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/interval/index.js", "groupTitle": "Intervals" }, { "type": "delete", "url": "/api/intervals/{id}", "title": "Deletes a Interval", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/intervals/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteIntervals", "group": "Intervals", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/interval/index.js", "groupTitle": "Intervals" }, { "type": "get", "url": "/api/intervals", "title": "Gets a list of Intervals", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/intervals -v -u {name}:{password}", "type": "json" } ], "name": "GetIntervals", "group": "Intervals", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/intervals?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/intervals?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/intervals?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/intervals?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/intervals?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/interval/index.js", "groupTitle": "Intervals" }, { "type": "get", "url": "/api/intervals/{id}", "title": "Gets a single Interval", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/intervals/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowIntervals", "group": "Intervals", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/interval/index.js", "groupTitle": "Intervals" }, { "type": "post", "url": "/api/intervals/{id}/sub_intervals", "title": "Creates a new sub interval", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/intervals/{id}/sub_intervals -d '{\"interval\": \"00:00-08:30,mon-fri,*,*\"}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addInterval", "group": "Intervals", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/interval/index.js", "groupTitle": "Intervals" }, { "type": "post", "url": "/api/intervals/{id}/sub_intervals/create_many", "title": "Create new sub intervals set", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/intervals/{id}/sub_intervals -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addIntervals", "group": "Intervals", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/interval/index.js", "groupTitle": "Intervals" }, { "type": "get", "url": "/api/intervals/{id}/sub_intervals", "title": "Get sub intervals set", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/intervals/{id}/sub_intervals -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getIntervals", "group": "Intervals", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/interval/index.js", "groupTitle": "Intervals" }, { "type": "put", "url": "/api/intervals/{id}", "title": "Update an existing Interval", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/intervals/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateIntervals", "group": "Intervals", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/interval/index.js", "groupTitle": "Intervals" }, { "type": "post", "url": "/api/jira", "title": "Creates a new issue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/jira -d '{\"key\": \"Bug\", \"description\": \"I can't do it!\"}' \\\n -H \"Content-Type: application/json\" -X POST -v -u {name}:{password}", "type": "json" } ], "name": "Creates_Issue", "group": "Issue", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "allowedValues": [ "\"Bug\"" ], "optional": true, "field": "issuetype", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "summary", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "description", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/jira/index.js", "groupTitle": "Issue" }, { "type": "post", "url": "/api/jscripty/answers/reports", "title": "Creates a new Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/jscripty/answers/reports -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateReports", "group": "JscriptyAnswerReport", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": true, "field": "question", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "answer", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "membername", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "projectname", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "queue", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "uniqueid", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "calleridname", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "calleridnum", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "questionId", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/jscriptyAnswerReport/index.js", "groupTitle": "JscriptyAnswerReport" }, { "type": "delete", "url": "/api/jscripty/answers/reports/{id}", "title": "Deletes a Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/jscripty/answers/reports/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteReports", "group": "JscriptyAnswerReport", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/jscriptyAnswerReport/index.js", "groupTitle": "JscriptyAnswerReport" }, { "type": "get", "url": "/api/jscripty/answers/reports/describe", "title": "Gets table info about Reports", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/jscripty/answers/reports/describe -v -u {name}:{password}", "type": "json" } ], "name": "DescribeReports", "group": "JscriptyAnswerReport", "description": "

Motion will return a HTTP status code 200 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/jscriptyAnswerReport/index.js", "groupTitle": "JscriptyAnswerReport" }, { "type": "get", "url": "/api/jscripty/answers/reports", "title": "Gets a list of Reports", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/jscripty/answers/reports -v -u {name}:{password}", "type": "json" } ], "name": "GetReports", "group": "JscriptyAnswerReport", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/jscripty/answers/reports?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/jscripty/answers/reports?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/jscripty/answers/reports?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/jscripty/answers/reports?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/jscripty/answers/reports?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/jscriptyAnswerReport/index.js", "groupTitle": "JscriptyAnswerReport" }, { "type": "get", "url": "/api/jscripty/answers/reports/{id}", "title": "Gets a single Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/jscripty/answers/reports/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowReports", "group": "JscriptyAnswerReport", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/jscriptyAnswerReport/index.js", "groupTitle": "JscriptyAnswerReport" }, { "type": "put", "url": "/api/jscripty/answers/reports/{id}", "title": "Update an existing Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/jscripty/answers/reports/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateReports", "group": "JscriptyAnswerReport", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/jscriptyAnswerReport/index.js", "groupTitle": "JscriptyAnswerReport" }, { "type": "post", "url": "/api/jscripty/questions/reports", "title": "Creates a new Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/jscripty/questions/reports -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateReports", "group": "JscriptyQuestionReport", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": true, "field": "question", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "answer", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "membername", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "projectname", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "queue", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "uniqueid", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "calleridname", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "calleridnum", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "questionId", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/jscriptyQuestionReport/index.js", "groupTitle": "JscriptyQuestionReport" }, { "type": "delete", "url": "/api/jscripty/questions/reports/{id}", "title": "Deletes a Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/jscripty/questions/reports/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteReports", "group": "JscriptyQuestionReport", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/jscriptyQuestionReport/index.js", "groupTitle": "JscriptyQuestionReport" }, { "type": "get", "url": "/api/jscripty/questions/reports/describe", "title": "Gets table info about Reports", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/jscripty/questions/reports/describe -v -u {name}:{password}", "type": "json" } ], "name": "DescribeReports", "group": "JscriptyQuestionReport", "description": "

Motion will return a HTTP status code 200 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/jscriptyQuestionReport/index.js", "groupTitle": "JscriptyQuestionReport" }, { "type": "get", "url": "/api/jscripty/questions/reports", "title": "Gets a list of Reports", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/jscripty/questions/reports -v -u {name}:{password}", "type": "json" } ], "name": "GetReports", "group": "JscriptyQuestionReport", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/jscripty/questions/reports?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/jscripty/questions/reports?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/jscripty/questions/reports?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/jscripty/questions/reports?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/jscripty/questions/reports?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/jscriptyQuestionReport/index.js", "groupTitle": "JscriptyQuestionReport" }, { "type": "get", "url": "/api/jscripty/questions/reports/{id}", "title": "Gets a single Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/jscripty/questions/reports/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowReports", "group": "JscriptyQuestionReport", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/jscriptyQuestionReport/index.js", "groupTitle": "JscriptyQuestionReport" }, { "type": "put", "url": "/api/jscripty/questions/reports/{id}", "title": "Update an existing Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/jscripty/questions/reports/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateReports", "group": "JscriptyQuestionReport", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/jscriptyQuestionReport/index.js", "groupTitle": "JscriptyQuestionReport" }, { "type": "post", "url": "/api/jscripty/sessions/reports", "title": "Creates a new Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/jscripty/sessions/reports -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateReports", "group": "JscriptySessionReport", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": true, "field": "starttime", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "endtime", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "membername", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "projectname", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "queue", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "uniqueid", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "calleridname", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "calleridnum", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "completed", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/jscriptySessionReport/index.js", "groupTitle": "JscriptySessionReport" }, { "type": "delete", "url": "/api/jscripty/sessions/reports/{id}", "title": "Deletes a Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/jscripty/sessions/reports/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteReports", "group": "JscriptySessionReport", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/jscriptySessionReport/index.js", "groupTitle": "JscriptySessionReport" }, { "type": "get", "url": "/api/jscripty/sessions/reports/describe", "title": "Gets table info about Reports", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/jscripty/sessions/reports/describe -v -u {name}:{password}", "type": "json" } ], "name": "DescribeReports", "group": "JscriptySessionReport", "description": "

Motion will return a HTTP status code 200 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/jscriptySessionReport/index.js", "groupTitle": "JscriptySessionReport" }, { "type": "get", "url": "/api/jscripty/sessions/reports", "title": "Gets a list of Reports", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/jscripty/sessions/reports -v -u {name}:{password}", "type": "json" } ], "name": "GetReports", "group": "JscriptySessionReport", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/jscripty/sessions/reports?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/jscripty/sessions/reports?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/jscripty/sessions/reports?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/jscripty/sessions/reports?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/jscripty/sessions/reports?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/jscriptySessionReport/index.js", "groupTitle": "JscriptySessionReport" }, { "type": "get", "url": "/api/jscripty/sessions/reports/{id}", "title": "Gets a single Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/jscripty/sessions/reports/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowReports", "group": "JscriptySessionReport", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/jscriptySessionReport/index.js", "groupTitle": "JscriptySessionReport" }, { "type": "get", "url": "/api/jscripty/sessions/reports/{id}/questions", "title": "Gets Jscripty Session questions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/jscripty/sessions/reports/{id}/questions -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getQuestions", "group": "JscriptySessionReport", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/jscriptySessionReport/index.js", "groupTitle": "JscriptySessionReport" }, { "type": "put", "url": "/api/jscripty/sessions/reports/{id}", "title": "Update an existing Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/jscripty/sessions/reports/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateReports", "group": "JscriptySessionReport", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/jscriptySessionReport/index.js", "groupTitle": "JscriptySessionReport" }, { "type": "post", "url": "/api/jscripty/projects/clone", "title": "Clone an existing Project", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/jscripty/projects/clone -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CloneProjects", "group": "Jscripty_Projects", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/jscriptyProject/index.js", "groupTitle": "Jscripty_Projects" }, { "type": "post", "url": "/api/jscripty/projects", "title": "Creates a new Project", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/jscripty/projects -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateProjects", "group": "Jscripty_Projects", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": true, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" }, { "group": "Body", "type": "Text", "optional": true, "field": "formData", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "enableUncompleteSave", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/jscriptyProject/index.js", "groupTitle": "Jscripty_Projects" }, { "type": "delete", "url": "/api/jscripty/projects/{id}", "title": "Deletes a Project", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/jscripty/projects/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteProjects", "group": "Jscripty_Projects", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/jscriptyProject/index.js", "groupTitle": "Jscripty_Projects" }, { "type": "get", "url": "/api/jscripty/projects", "title": "Gets a list of Projects", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/jscripty/projects -v -u {name}:{password}", "type": "json" } ], "name": "GetProjects", "group": "Jscripty_Projects", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/jscripty/projects?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/jscripty/projects?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/jscripty/projects?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/jscripty/projects?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/jscripty/projects?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/jscriptyProject/index.js", "groupTitle": "Jscripty_Projects" }, { "type": "get", "url": "/api/jscripty/projects/{id}", "title": "Gets a single Project", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/jscripty/projects/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowProjects", "group": "Jscripty_Projects", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/jscriptyProject/index.js", "groupTitle": "Jscripty_Projects" }, { "type": "get", "url": "/api/jscripty/projects/{id}/answers", "title": "Gets jscripty project answers", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/jscripty/projects/{id}/answers -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getAnswers", "group": "Jscripty_Projects", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/jscriptyProject/index.js", "groupTitle": "Jscripty_Projects" }, { "type": "get", "url": "/api/jscripty/projects/{id}/sessions", "title": "Gets jscripty project sessions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/jscripty/projects/{id}/sessions -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getSessions", "group": "Jscripty_Projects", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/jscriptyProject/index.js", "groupTitle": "Jscripty_Projects" }, { "type": "get", "url": "/api/jscripty/projects/{id}/summary", "title": "Gets jscripty project summary", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/jscripty/projects/{id}/summary -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getSummary", "group": "Jscripty_Projects", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/jscriptyProject/index.js", "groupTitle": "Jscripty_Projects" }, { "type": "put", "url": "/api/jscripty/projects/{id}", "title": "Update an existing Project", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/jscripty/projects/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateProjects", "group": "Jscripty_Projects", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/jscriptyProject/index.js", "groupTitle": "Jscripty_Projects" }, { "type": "get", "url": "/api/license", "title": "Gets License Info", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/license -v -u {name}:{password} -X GET", "type": "json" } ], "name": "index", "group": "License", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/license/index.js", "groupTitle": "License" }, { "type": "put", "url": "/api/license/{id}", "title": "Update an existing License", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/license/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateLiense", "group": "License", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/license/index.js", "groupTitle": "License" }, { "type": "post", "url": "/api/mail/accounts/{id}/in_servers", "title": "Creates a new IMAP server", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/accounts/{id}/in_servers -d '{\"host\": \"host\", \"username\": \"username\", \"password\": \"password\", \"...\": \"...\"}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "AddImap", "group": "Mail_Accounts", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "host", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "authentication", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "user", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "password", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "port", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "tls", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "mailbox", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "connTimeout", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "authTimeout", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "service", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailAccount/index.js", "groupTitle": "Mail_Accounts" }, { "type": "post", "url": "/api/mail/accounts/{id}/out_servers", "title": "Creates a new SMTP server", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/accounts/{id}/out_servers -d '{\"host\": \"host\", \"username\": \"username\", \"password\": \"password\", \"...\": \"...\"}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "AddSmtp", "group": "Mail_Accounts", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "host", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "user", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "pass", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "port", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "secure", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "service", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "authentication", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailAccount/index.js", "groupTitle": "Mail_Accounts" }, { "type": "delete", "url": "/api/mail/accounts/{id}", "title": "Deletes a Account", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/accounts/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteAccounts", "group": "Mail_Accounts", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailAccount/index.js", "groupTitle": "Mail_Accounts" }, { "type": "get", "url": "/api/mail/accounts/describe", "title": "Gets table info about Accounts", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/accounts/describe -v -u {name}:{password}", "type": "json" } ], "name": "DescribeAccounts", "group": "Mail_Accounts", "description": "

Motion will return a HTTP status code 200 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailAccount/index.js", "groupTitle": "Mail_Accounts" }, { "type": "get", "url": "/api/mail/accounts", "title": "Gets a list of Accounts", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/accounts -v -u {name}:{password}", "type": "json" } ], "name": "GetAccounts", "group": "Mail_Accounts", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/mail/accounts?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/mail/accounts?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/mail/accounts?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/mail/accounts?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/mail/accounts?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/mailAccount/index.js", "groupTitle": "Mail_Accounts" }, { "type": "get", "url": "/api/mail/accounts/{id}/in_servers", "title": "Gets account IMAP server", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/accounts/{id}/in_servers -v -u {name}:{password} -X GET", "type": "json" } ], "name": "GetImap", "group": "Mail_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailAccount/index.js", "groupTitle": "Mail_Accounts" }, { "type": "get", "url": "/api/mail/accounts/{id}/out_servers", "title": "Gets account SMTP server", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/accounts/{id}/out_servers -v -u {name}:{password} -X GET", "type": "json" } ], "name": "GetSmtp", "group": "Mail_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailAccount/index.js", "groupTitle": "Mail_Accounts" }, { "type": "delete", "url": "/api/mail/accounts/{id}/in_servers", "title": "Removes IMAP server from an account", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/accounts/{id}/in_servers -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "RemoveImmap", "group": "Mail_Accounts", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailAccount/index.js", "groupTitle": "Mail_Accounts" }, { "type": "delete", "url": "/api/mail/accounts/{id}/out_servers", "title": "Removes SMTP server from an account", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/accounts/{id}/out_servers -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "RemoveSmtp", "group": "Mail_Accounts", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailAccount/index.js", "groupTitle": "Mail_Accounts" }, { "type": "get", "url": "/api/mail/accounts/{id}", "title": "Gets a single Account", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/accounts/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowAccounts", "group": "Mail_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailAccount/index.js", "groupTitle": "Mail_Accounts" }, { "type": "put", "url": "/api/mail/messages/{id}/accept", "title": "Accepts message", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/messages/{id}/accept \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "acceptMessage", "group": "Mail_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailMessage/index.js", "groupTitle": "Mail_Accounts" }, { "type": "post", "url": "/api/mail/accounts/{id}/canned_answers", "title": "Creates new canned answer", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/accounts/{id}/canned_answers -d '{\"name\": \"vip\"}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addAnswer", "group": "Mail_Accounts", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "key", "description": "" }, { "group": "Body", "type": "Text", "optional": false, "field": "value", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailAccount/index.js", "groupTitle": "Mail_Accounts" }, { "type": "post", "url": "/api/mail/accounts/{id}/applications", "title": "Creates new applications", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/accounts/{id}/applications -d '[{\"app\": \"queue\", \"...\": \"...\"}]' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addApplications", "group": "Mail_Accounts", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "Integer", "optional": false, "field": "priority", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "app", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "appdata", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "interval", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailAccount/index.js", "groupTitle": "Mail_Accounts" }, { "type": "post", "url": "/api/mail/accounts/{id}/dispositions", "title": "Creates new disposition", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/accounts/{id}/dispositions -d '{\"name\": \"vip\"}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addDisposition", "group": "Mail_Accounts", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "name", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailAccount/index.js", "groupTitle": "Mail_Accounts" }, { "type": "post", "url": "/api/mail/accounts/{id}/dispositions", "title": "Creates many dispositions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/accounts/{id}/dispositions -d '[{\"name\": \"vip\"}]' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addDispositions", "group": "Mail_Accounts", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "name", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailAccount/index.js", "groupTitle": "Mail_Accounts" }, { "type": "post", "url": "/api/mail/accounts/{id}/interactions", "title": "Creates new interactions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/accounts/{id}/interactions -d '[{\"subject\": \"My printer is on fire!\", \"...\": \"...\"}]' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addInteraction", "group": "Mail_Accounts", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "Boolean", "optional": true, "field": "closed", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "closedAt", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "disposition", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "note", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "inReplyTo", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "to", "description": "" }, { "group": "Body", "type": "Text", "optional": true, "field": "cc", "description": "" }, { "group": "Body", "type": "Text", "optional": true, "field": "subject", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "attach", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "read1stAt", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "substatus", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "substatusAt", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"in\"", "\"out\"" ], "optional": false, "field": "firstMsgDirection", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "lastMsgAt", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"in\"", "\"out\"" ], "optional": false, "field": "lastMsgDirection", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailAccount/index.js", "groupTitle": "Mail_Accounts" }, { "type": "post", "url": "/api/mail/accounts", "title": "Create a mail account", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/accounts \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "create", "group": "Mail_Accounts", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailAccount/index.js", "groupTitle": "Mail_Accounts" }, { "type": "get", "url": "/api/mail/accounts/{id}/canned_answers", "title": "Gets account canned answers", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/accounts/{id}/canned_answers -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getAnswers", "group": "Mail_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailAccount/index.js", "groupTitle": "Mail_Accounts" }, { "type": "get", "url": "/api/mail/accounts/{id}/applications", "title": "Gets account applications", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/accounts/{id}/applications -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getApplications", "group": "Mail_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailAccount/index.js", "groupTitle": "Mail_Accounts" }, { "type": "get", "url": "/api/mail/accounts/{id}/dispositions", "title": "Gets account dispositions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/accounts/{id}/dispositions -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getDispositions", "group": "Mail_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailAccount/index.js", "groupTitle": "Mail_Accounts" }, { "type": "get", "url": "/api/mail/accounts/{id}/interactions", "title": "Gets account interactions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/accounts/{id}/interactions -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getInteraction", "group": "Mail_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailAccount/index.js", "groupTitle": "Mail_Accounts" }, { "type": "get", "url": "/api/mail/accounts/{id}/messages", "title": "Gets account messages", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/accounts/{id}/messages -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getMessages", "group": "Mail_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailAccount/index.js", "groupTitle": "Mail_Accounts" }, { "type": "put", "url": "/api/mail/messages/{id}/reject", "title": "Rejects message", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/messages/{id}/reject \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "rejectMessage", "group": "Mail_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailMessage/index.js", "groupTitle": "Mail_Accounts" }, { "type": "post", "url": "/api/mail/accounts/{id}/send", "title": "Send new mail", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/accounts/{id}/send -d '{from: '\"John Doe\" '}' -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "sendMail", "group": "Mail_Accounts", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailAccount/index.js", "groupTitle": "Mail_Accounts" }, { "type": "put", "url": "/api/mail/accounts/{id}", "title": "Update an existing Account", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/accounts/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateAccounts", "group": "Mail_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailAccount/index.js", "groupTitle": "Mail_Accounts" }, { "type": "get", "url": "/api/mail/accounts/{id}/verify", "title": "Verify mail account", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/accounts/{id}/verify -v -u {name}:{password} -X GET", "type": "json" } ], "name": "verifySmtp", "group": "Mail_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailAccount/index.js", "groupTitle": "Mail_Accounts" }, { "type": "delete", "url": "/api/mail/applications/{id}", "title": "Deletes a Application", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/applications/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteApplications", "group": "Mail_Applications", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailApplication/index.js", "groupTitle": "Mail_Applications" }, { "type": "get", "url": "/api/mail/applications/{id}", "title": "Gets a single Application", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/applications/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowApplications", "group": "Mail_Applications", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailApplication/index.js", "groupTitle": "Mail_Applications" }, { "type": "put", "url": "/api/mail/applications/{id}", "title": "Update an existing Application", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/applications/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateApplications", "group": "Mail_Applications", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailApplication/index.js", "groupTitle": "Mail_Applications" }, { "type": "post", "url": "/api/mail/dispositions", "title": "Creates a new Disposition", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/dispositions -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateDispositions", "group": "Mail_Dispositions", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "name", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailDisposition/index.js", "groupTitle": "Mail_Dispositions" }, { "type": "delete", "url": "/api/mail/dispositions/{id}", "title": "Deletes a Disposition", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/dispositions/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteDispositions", "group": "Mail_Dispositions", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailDisposition/index.js", "groupTitle": "Mail_Dispositions" }, { "type": "get", "url": "/api/mail/dispositions/{id}", "title": "Gets a single Disposition", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/dispositions/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowDispositions", "group": "Mail_Dispositions", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailDisposition/index.js", "groupTitle": "Mail_Dispositions" }, { "type": "put", "url": "/api/mail/dispositions/{id}", "title": "Update an existing Disposition", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/dispositions/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateDispositions", "group": "Mail_Dispositions", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailDisposition/index.js", "groupTitle": "Mail_Dispositions" }, { "type": "post", "url": "/api/mail/interactions/{id}/tags", "title": "Add tags to the interaction", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/interaction/{id}/tags -d '{\"ids\": [1,2]}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "AddTags", "group": "Mail_Interactions", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailInteraction/index.js", "groupTitle": "Mail_Interactions" }, { "type": "post", "url": "/api/mail/interactions", "title": "Creates a new Interaction", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/interactions -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateInteractions", "group": "Mail_Interactions", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "Boolean", "optional": true, "field": "closed", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "closedAt", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "disposition", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "note", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "inReplyTo", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "to", "description": "" }, { "group": "Body", "type": "Text", "optional": true, "field": "cc", "description": "" }, { "group": "Body", "type": "Text", "optional": true, "field": "subject", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "attach", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "read1stAt", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "substatus", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "substatusAt", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"in\"", "\"out\"" ], "optional": false, "field": "firstMsgDirection", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "lastMsgAt", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"in\"", "\"out\"" ], "optional": false, "field": "lastMsgDirection", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailInteraction/index.js", "groupTitle": "Mail_Interactions" }, { "type": "delete", "url": "/api/mail/interactions/{id}", "title": "Deletes a Interaction", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/interactions/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteInteractions", "group": "Mail_Interactions", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailInteraction/index.js", "groupTitle": "Mail_Interactions" }, { "type": "get", "url": "/api/mail/interactions/describe", "title": "Gets table info about Interactions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/interactions/describe -v -u {name}:{password}", "type": "json" } ], "name": "DescribeInteractions", "group": "Mail_Interactions", "description": "

Motion will return a HTTP status code 200 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailInteraction/index.js", "groupTitle": "Mail_Interactions" }, { "type": "get", "url": "/api/mail/interactions", "title": "Gets a list of Interactions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/interactions -v -u {name}:{password}", "type": "json" } ], "name": "GetInteractions", "group": "Mail_Interactions", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/mail/interactions?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/mail/interactions?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/mail/interactions?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/mail/interactions?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/mail/interactions?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/mailInteraction/index.js", "groupTitle": "Mail_Interactions" }, { "type": "delete", "url": "/api/mail/interactions/{id}/tags", "title": "Removes tags from interaction", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/interactions/{id}/tags?ids=1&ids=2 -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "RemoveTags", "group": "Mail_Interactions", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailInteraction/index.js", "groupTitle": "Mail_Interactions" }, { "type": "get", "url": "/api/mail/interactions/{id}", "title": "Gets a single Interaction", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/interactions/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowInteractions", "group": "Mail_Interactions", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailInteraction/index.js", "groupTitle": "Mail_Interactions" }, { "type": "post", "url": "/api/mail/interactions/{id}/messages", "title": "Creates new message", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/interactions/{id}/messages -d '[{\"to\": \"sales@xcally.com\", \"...\": \"...\"}]' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addMessage", "group": "Mail_Interactions", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "Text", "optional": false, "field": "body", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "read", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"in\"", "\"out\"" ], "optional": false, "field": "direction", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "messageId", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "from", "description": "" }, { "group": "Body", "type": "Text", "optional": true, "field": "to", "description": "" }, { "group": "Body", "type": "Text", "optional": true, "field": "cc", "description": "" }, { "group": "Body", "type": "Text", "optional": true, "field": "bcc", "description": "" }, { "group": "Body", "type": "Text", "optional": true, "field": "subject", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "sentAt", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "attach", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "secret", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "readAt", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailInteraction/index.js", "groupTitle": "Mail_Interactions" }, { "type": "get", "url": "/api/mail/interactions/{id}/messages", "title": "Gets interaction messages", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/interactions/{id}/messages -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getMessages", "group": "Mail_Interactions", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailInteraction/index.js", "groupTitle": "Mail_Interactions" }, { "type": "put", "url": "/api/mail/interactions/{id}", "title": "Update an existing Interaction", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/interactions/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateInteractions", "group": "Mail_Interactions", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailInteraction/index.js", "groupTitle": "Mail_Interactions" }, { "type": "delete", "url": "/api/mail/messages/{id}", "title": "Deletes a Message", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/messages/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteMessages", "group": "Mail_Messages", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailMessage/index.js", "groupTitle": "Mail_Messages" }, { "type": "get", "url": "/api/mail/messages/describe", "title": "Gets table info about Messages", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/messages/describe -v -u {name}:{password}", "type": "json" } ], "name": "DescribeMessages", "group": "Mail_Messages", "description": "

Motion will return a HTTP status code 200 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailMessage/index.js", "groupTitle": "Mail_Messages" }, { "type": "get", "url": "/api/mail/messages", "title": "Gets a list of Messages", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/messages -v -u {name}:{password}", "type": "json" } ], "name": "GetMessages", "group": "Mail_Messages", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/mail/messages?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/mail/messages?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/mail/messages?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/mail/messages?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/mail/messages?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/mailMessage/index.js", "groupTitle": "Mail_Messages" }, { "type": "get", "url": "/api/mail/messages/{id}", "title": "Gets a single Message", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/messages/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowMessages", "group": "Mail_Messages", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailMessage/index.js", "groupTitle": "Mail_Messages" }, { "type": "post", "url": "/api/mail/messages", "title": "Create a message", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/messages \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "createMessage", "group": "Mail_Messages", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailMessage/index.js", "groupTitle": "Mail_Messages" }, { "type": "put", "url": "/api/mail/messages/{id}", "title": "Update an existing Message", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/messages/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateMessages", "group": "Mail_Messages", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailMessage/index.js", "groupTitle": "Mail_Messages" }, { "type": "post", "url": "/api/mail/reports/queue", "title": "Creates a new Mail Queue Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/reports/queue -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateMail_Queue_Reports", "group": "Mail_Queue_Reports", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "uniqueid", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "from", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "joinAt", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "leaveAt", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "acceptAt", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "exitAt", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "reason", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailQueueReport/index.js", "groupTitle": "Mail_Queue_Reports" }, { "type": "delete", "url": "/api/mail/reports/queue/{id}", "title": "Deletes a Mail Queue Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/reports/queue/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteMail_Queue_Reports", "group": "Mail_Queue_Reports", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailQueueReport/index.js", "groupTitle": "Mail_Queue_Reports" }, { "type": "get", "url": "/api/mail/reports/queue/describe", "title": "Gets table info about Mail Queue Reports", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/reports/queue/describe -v -u {name}:{password}", "type": "json" } ], "name": "DescribeMail_Queue_Reports", "group": "Mail_Queue_Reports", "description": "

Motion will return a HTTP status code 200 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailQueueReport/index.js", "groupTitle": "Mail_Queue_Reports" }, { "type": "get", "url": "/api/mail/reports/queue", "title": "Gets a list of Mail Queue Reports", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/reports/queue -v -u {name}:{password}", "type": "json" } ], "name": "GetMail_Queue_Reports", "group": "Mail_Queue_Reports", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/mail/reports/queue?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/mail/reports/queue?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/mail/reports/queue?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/mail/reports/queue?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/mail/reports/queue?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/mailQueueReport/index.js", "groupTitle": "Mail_Queue_Reports" }, { "type": "get", "url": "/api/mail/reports/queue/{id}", "title": "Gets a single Mail Queue Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/reports/queue/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowMail_Queue_Reports", "group": "Mail_Queue_Reports", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailQueueReport/index.js", "groupTitle": "Mail_Queue_Reports" }, { "type": "put", "url": "/api/mail/reports/queue/{id}", "title": "Update an existing Mail Queue Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/reports/queue/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateMail_Queue_Reports", "group": "Mail_Queue_Reports", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailQueueReport/index.js", "groupTitle": "Mail_Queue_Reports" }, { "type": "post", "url": "/api/mail/queues/{id}/users", "title": "Add agents to a queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/queues/{id}/users -d '{\"ids\": [1,2], \"penalty\": 2}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "AddAgents", "group": "Mail_Queues", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailQueue/index.js", "groupTitle": "Mail_Queues" }, { "type": "post", "url": "/api/mail/queues/{id}/teams", "title": "Add teams to a queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/queues/{id}/teams -d '{\"ids\": [1,2]}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "AddTeams", "group": "Mail_Queues", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailQueue/index.js", "groupTitle": "Mail_Queues" }, { "type": "post", "url": "/api/mail/queues", "title": "Creates a new Queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/queues -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateQueues", "group": "Mail_Queues", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": true, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "timeout", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"rrmemory\"", "\"beepall\"", "\"roundrobin\"" ], "optional": true, "field": "strategy", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailQueue/index.js", "groupTitle": "Mail_Queues" }, { "type": "delete", "url": "/api/mail/queues/{id}", "title": "Deletes a Queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/queues/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteQueues", "group": "Mail_Queues", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailQueue/index.js", "groupTitle": "Mail_Queues" }, { "type": "get", "url": "/api/mail/queues/describe", "title": "Gets table info about Queues", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/queues/describe -v -u {name}:{password}", "type": "json" } ], "name": "DescribeQueues", "group": "Mail_Queues", "description": "

Motion will return a HTTP status code 200 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailQueue/index.js", "groupTitle": "Mail_Queues" }, { "type": "get", "url": "/api/mail/queues/{id}/users", "title": "Gets queue agents", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/queues/{id}/users -v -u {name}:{password} -X POST", "type": "json" } ], "name": "GetAgents", "group": "Mail_Queues", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailQueue/index.js", "groupTitle": "Mail_Queues" }, { "type": "get", "url": "/api/mail/queues/{id}/members", "title": "GetMembers", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/queues/{id}/members -v -u {name}:{password}", "type": "json" } ], "name": "GetMembers", "group": "Mail_Queues", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailQueue/index.js", "groupTitle": "Mail_Queues" }, { "type": "get", "url": "/api/mail/queues", "title": "Gets a list of Queues", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/queues -v -u {name}:{password}", "type": "json" } ], "name": "GetQueues", "group": "Mail_Queues", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/mail/queues?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/mail/queues?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/mail/queues?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/mail/queues?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/mail/queues?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/mailQueue/index.js", "groupTitle": "Mail_Queues" }, { "type": "get", "url": "/api/mail/queues/{id}/teams", "title": "Gets queues list", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/queues/{id}/teams -v -u {name}:{password}", "type": "json" } ], "name": "GetTeams", "group": "Mail_Queues", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailQueue/index.js", "groupTitle": "Mail_Queues" }, { "type": "delete", "url": "/api/mail/queues/{id}/users", "title": "Removes agents from a queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/queues/{id}/users?ids=1&ids=2 -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "RemoveAgents", "group": "Mail_Queues", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailQueue/index.js", "groupTitle": "Mail_Queues" }, { "type": "get", "url": "/api/mail/queues/{id}", "title": "Gets a single Queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/queues/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowQueues", "group": "Mail_Queues", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailQueue/index.js", "groupTitle": "Mail_Queues" }, { "type": "put", "url": "/api/mail/queues/{id}", "title": "Update an existing Queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/queues/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateQueues", "group": "Mail_Queues", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailQueue/index.js", "groupTitle": "Mail_Queues" }, { "type": "post", "url": "/api/mail/out_servers", "title": "Creates a new SMTP", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/out_servers -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateSMTPs", "group": "Mail_SMTP", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "host", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "user", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "pass", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "port", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "secure", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "service", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "authentication", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailServerOut/index.js", "groupTitle": "Mail_SMTP" }, { "type": "delete", "url": "/api/mail/out_servers/{id}", "title": "Deletes a SMTP", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/out_servers/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteSMTPs", "group": "Mail_SMTP", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailServerOut/index.js", "groupTitle": "Mail_SMTP" }, { "type": "get", "url": "/api/mail/out_servers", "title": "Gets a list of SMTPs", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/out_servers -v -u {name}:{password}", "type": "json" } ], "name": "GetSMTPs", "group": "Mail_SMTP", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/mail/out_servers?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/mail/out_servers?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/mail/out_servers?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/mail/out_servers?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/mail/out_servers?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/mailServerOut/index.js", "groupTitle": "Mail_SMTP" }, { "type": "get", "url": "/api/mail/out_servers/{id}", "title": "Gets a single SMTP", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/out_servers/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowSMTPs", "group": "Mail_SMTP", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailServerOut/index.js", "groupTitle": "Mail_SMTP" }, { "type": "put", "url": "/api/mail/out_servers/{id}", "title": "Update an existing SMTP", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/out_servers/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateSMTPs", "group": "Mail_SMTP", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailServerOut/index.js", "groupTitle": "Mail_SMTP" }, { "type": "get", "url": "/api/members/reports/describe", "title": "Gets table info about Member Reports", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/members/reports/describe -v -u {name}:{password}", "type": "json" } ], "name": "DescribeMember_Reports", "group": "Member_Reports", "description": "

Motion will return a HTTP status code 200 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/memberReport/index.js", "groupTitle": "Member_Reports" }, { "type": "get", "url": "/api/members/reports", "title": "Gets a list of Member Reports", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/members/reports -v -u {name}:{password}", "type": "json" } ], "name": "GetMember_Reports", "group": "Member_Reports", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/members/reports?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/members/reports?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/members/reports?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/members/reports?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/members/reports?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/memberReport/index.js", "groupTitle": "Member_Reports" }, { "type": "get", "url": "/api/members/reports/{id}", "title": "Gets a single Member Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/members/reports/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowMember_Reports", "group": "Member_Reports", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/memberReport/index.js", "groupTitle": "Member_Reports" }, { "type": "get", "url": "/api/migrations", "title": "Gets a list of Migrations", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/migrations -v -u {name}:{password}", "type": "json" } ], "name": "GetMigrations", "group": "Migrations", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/migrations?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/migrations?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/migrations?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/migrations?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/migrations?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/migration/index.js", "groupTitle": "Migrations" }, { "type": "post", "url": "/api/voice/networks", "title": "Create a new network", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/networks -v -u {name}:{password} -X POST", "type": "json" } ], "name": "Create", "group": "Networks", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/network/index.js", "groupTitle": "Networks" }, { "type": "delete", "url": "/api/voice/networks/{id}", "title": "Deletes a network", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/networks/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "Delete", "group": "Networks", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/network/index.js", "groupTitle": "Networks" }, { "type": "get", "url": "/api/networks", "title": "Gets a list of Networks", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/networks -v -u {name}:{password}", "type": "json" } ], "name": "GetNetworks", "group": "Networks", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/networks?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/networks?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/networks?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/networks?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/networks?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/network/index.js", "groupTitle": "Networks" }, { "type": "get", "url": "/api/networks/{id}", "title": "Gets a single Network", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/networks/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowNetworks", "group": "Networks", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/network/index.js", "groupTitle": "Networks" }, { "type": "put", "url": "/api/voice/networks/{id}", "title": "Update an existing network", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/networks/{id} -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "Update", "group": "Networks", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/network/index.js", "groupTitle": "Networks" }, { "type": "post", "url": "/api/openchannel/accounts", "title": "Creates a new Account", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/accounts -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateAccounts", "group": "Openchannel_Accounts", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "replyUri", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "key", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelAccount/index.js", "groupTitle": "Openchannel_Accounts" }, { "type": "delete", "url": "/api/openchannel/accounts/{id}", "title": "Deletes a Account", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/accounts/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteAccounts", "group": "Openchannel_Accounts", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelAccount/index.js", "groupTitle": "Openchannel_Accounts" }, { "type": "get", "url": "/api/openchannel/accounts/describe", "title": "Gets table info about Accounts", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/accounts/describe -v -u {name}:{password}", "type": "json" } ], "name": "DescribeAccounts", "group": "Openchannel_Accounts", "description": "

Motion will return a HTTP status code 200 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelAccount/index.js", "groupTitle": "Openchannel_Accounts" }, { "type": "get", "url": "/api/openchannel/accounts", "title": "Gets a list of Accounts", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/accounts -v -u {name}:{password}", "type": "json" } ], "name": "GetAccounts", "group": "Openchannel_Accounts", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/openchannel/accounts?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/openchannel/accounts?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/openchannel/accounts?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/openchannel/accounts?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/openchannel/accounts?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/openchannelAccount/index.js", "groupTitle": "Openchannel_Accounts" }, { "type": "delete", "url": "/api/openchannel/accounts/{id}/canned_answers", "title": "Removes canned answers from account", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/accounts/{id}/canned_answers?ids=1&ids=2 -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "RemoveAnswers", "group": "Openchannel_Accounts", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelAccount/index.js", "groupTitle": "Openchannel_Accounts" }, { "type": "get", "url": "/api/openchannel/accounts/{id}", "title": "Gets a single Account", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/accounts/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowAccounts", "group": "Openchannel_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelAccount/index.js", "groupTitle": "Openchannel_Accounts" }, { "type": "post", "url": "/api/openchannel/accounts/{id}/canned_answers", "title": "Creates new canned answer", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/accounts/{id}/canned_answers -d '{\"name\": \"vip\"}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addAnswer", "group": "Openchannel_Accounts", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "key", "description": "" }, { "group": "Body", "type": "Text", "optional": false, "field": "value", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelAccount/index.js", "groupTitle": "Openchannel_Accounts" }, { "type": "post", "url": "/api/openchannel/accounts/{id}/applications", "title": "Creates new applications", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/accounts/{id}/applications -d '[{\"app\": \"queue\", \"...\": \"...\"}]' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addApplications", "group": "Openchannel_Accounts", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "Integer", "optional": false, "field": "priority", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "app", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "appdata", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "interval", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelAccount/index.js", "groupTitle": "Openchannel_Accounts" }, { "type": "post", "url": "/api/openchannel/accounts/{id}/dispositions", "title": "Creates new disposition", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/accounts/{id}/dispositions -d '{\"name\": \"Satisfied\"}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addDisposition", "group": "Openchannel_Accounts", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "name", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelAccount/index.js", "groupTitle": "Openchannel_Accounts" }, { "type": "post", "url": "/api/openchannel/accounts/{id}/dispositions", "title": "Creates many dispositions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/accounts/{id}/dispositions -d '[{\"name\": \"Satisfied\"}]' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addDispositions", "group": "Openchannel_Accounts", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "name", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelAccount/index.js", "groupTitle": "Openchannel_Accounts" }, { "type": "get", "url": "/api/openchannel/accounts/{id}/canned_answers", "title": "Gets account canned answers", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/accounts/{id}/canned_answers -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getAnswers", "group": "Openchannel_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelAccount/index.js", "groupTitle": "Openchannel_Accounts" }, { "type": "get", "url": "/api/openchannel/accounts/{id}/applications", "title": "Gets account applications", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/accounts/{id}/applications -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getApplications", "group": "Openchannel_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelAccount/index.js", "groupTitle": "Openchannel_Accounts" }, { "type": "get", "url": "/api/openchannel/accounts/{id}/dispositions", "title": "Gets account dispositions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/accounts/{id}/dispositions -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getDispositions", "group": "Openchannel_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelAccount/index.js", "groupTitle": "Openchannel_Accounts" }, { "type": "get", "url": "/api/openchannel/accounts/{id}/interactions", "title": "Gets Openchannel Account Interactions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/accounts/{id}/interactions -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getInteractions", "group": "Openchannel_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelAccount/index.js", "groupTitle": "Openchannel_Accounts" }, { "type": "post", "url": "/api/openchannel/accounts/{id}/notify", "title": "Notify new message", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/accounts/{id}/notify -d '{\"body\": \"hello world\", \"...\": \"...\"}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "notify", "group": "Openchannel_Accounts", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

Follow this link to check the documentation:

https://wiki.xcallymotion.com/display/XMV/New+Channels+Configuration+Steps#NewChannelsConfigurationSteps-BuildyourownChannelservice

", "version": "0.0.0", "filename": "server/api/openchannelAccount/index.js", "groupTitle": "Openchannel_Accounts" }, { "type": "put", "url": "/api/openchannel/accounts/{id}", "title": "Update an existing Account", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/accounts/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateAccounts", "group": "Openchannel_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelAccount/index.js", "groupTitle": "Openchannel_Accounts" }, { "type": "post", "url": "/api/openchannel/applications", "title": "Creates a new Application", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/applications -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateApplications", "group": "Openchannel_Applications", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "Integer", "optional": false, "field": "priority", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "app", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "appdata", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "interval", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelApplication/index.js", "groupTitle": "Openchannel_Applications" }, { "type": "delete", "url": "/api/openchannel/applications/{id}", "title": "Deletes a Application", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/applications/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteApplications", "group": "Openchannel_Applications", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelApplication/index.js", "groupTitle": "Openchannel_Applications" }, { "type": "get", "url": "/api/openchannel/applications", "title": "Gets a list of Applications", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/applications -v -u {name}:{password}", "type": "json" } ], "name": "GetApplications", "group": "Openchannel_Applications", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/openchannel/applications?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/openchannel/applications?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/openchannel/applications?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/openchannel/applications?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/openchannel/applications?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/openchannelApplication/index.js", "groupTitle": "Openchannel_Applications" }, { "type": "get", "url": "/api/openchannel/applications/{id}", "title": "Gets a single Application", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/applications/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowApplications", "group": "Openchannel_Applications", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelApplication/index.js", "groupTitle": "Openchannel_Applications" }, { "type": "put", "url": "/api/openchannel/applications/{id}", "title": "Update an existing Application", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/applications/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateApplications", "group": "Openchannel_Applications", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelApplication/index.js", "groupTitle": "Openchannel_Applications" }, { "type": "post", "url": "/api/openchannel/dispositions", "title": "Creates a new Disposition", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/dispositions -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateDispositions", "group": "Openchannel_Dispositions", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "name", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelDisposition/index.js", "groupTitle": "Openchannel_Dispositions" }, { "type": "delete", "url": "/api/openchannel/dispositions/{id}", "title": "Deletes a Disposition", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/dispositions/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteDispositions", "group": "Openchannel_Dispositions", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelDisposition/index.js", "groupTitle": "Openchannel_Dispositions" }, { "type": "get", "url": "/api/openchannel/dispositions/{id}", "title": "Gets a single Disposition", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/dispositions/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowDispositions", "group": "Openchannel_Dispositions", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelDisposition/index.js", "groupTitle": "Openchannel_Dispositions" }, { "type": "put", "url": "/api/openchannel/dispositions/{id}", "title": "Update an existing Disposition", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/dispositions/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateDispositions", "group": "Openchannel_Dispositions", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelDisposition/index.js", "groupTitle": "Openchannel_Dispositions" }, { "type": "post", "url": "/api/openchannel/interactions/{id}/tags", "title": "Add tags to the interaction", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/interaction/{id}/tags -d '{\"ids\": [1,2]}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "AddTags", "group": "Openchannel_Interactions", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelInteraction/index.js", "groupTitle": "Openchannel_Interactions" }, { "type": "post", "url": "/api/openchannel/interactions", "title": "Creates a new Interaction", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/interactions -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateInteractions", "group": "Openchannel_Interactions", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "Boolean", "optional": true, "field": "closed", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "closedAt", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "disposition", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "note", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "read1stAt", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "threadId", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "externalUrl", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "lastMsgAt", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"in\"", "\"out\"" ], "optional": false, "field": "lastMsgDirection", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelInteraction/index.js", "groupTitle": "Openchannel_Interactions" }, { "type": "delete", "url": "/api/openchannel/interactions/{id}", "title": "Deletes a Interaction", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/interactions/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteInteractions", "group": "Openchannel_Interactions", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelInteraction/index.js", "groupTitle": "Openchannel_Interactions" }, { "type": "get", "url": "/api/openchannel/interactions/describe", "title": "Gets table info about Interactions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/interactions/describe -v -u {name}:{password}", "type": "json" } ], "name": "DescribeInteractions", "group": "Openchannel_Interactions", "description": "

Motion will return a HTTP status code 200 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelInteraction/index.js", "groupTitle": "Openchannel_Interactions" }, { "type": "get", "url": "/api/openchannel/interactions", "title": "Gets a list of Interactions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/interactions -v -u {name}:{password}", "type": "json" } ], "name": "GetInteractions", "group": "Openchannel_Interactions", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/openchannel/interactions?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/openchannel/interactions?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/openchannel/interactions?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/openchannel/interactions?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/openchannel/interactions?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/openchannelInteraction/index.js", "groupTitle": "Openchannel_Interactions" }, { "type": "delete", "url": "/api/mail/accounts/{id}/canned_answers", "title": "Removes canned answers from account", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/accounts/{id}/canned_answers?ids=1&ids=2 -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "RemoveAnswers", "group": "Openchannel_Interactions", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailAccount/index.js", "groupTitle": "Openchannel_Interactions" }, { "type": "delete", "url": "/api/openchannel/interactions/{id}/tags", "title": "Removes tags from interaction", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/interactions/{id}/tags?ids=1&ids=2 -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "RemoveTags", "group": "Openchannel_Interactions", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelInteraction/index.js", "groupTitle": "Openchannel_Interactions" }, { "type": "get", "url": "/api/openchannel/interactions/{id}", "title": "Gets a single Interaction", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/interactions/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowInteractions", "group": "Openchannel_Interactions", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelInteraction/index.js", "groupTitle": "Openchannel_Interactions" }, { "type": "post", "url": "/api/openchannel/interactions/{id}/messages", "title": "Creates new messages", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/interactions/{id}/messages -d '[{\"to\": \"+3901119886500\", \"...\": \"...\"}]' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addMessage", "group": "Openchannel_Interactions", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "Text", "optional": false, "field": "body", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "read", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "secret", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"in\"", "\"out\"" ], "optional": false, "field": "direction", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "readAt", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelInteraction/index.js", "groupTitle": "Openchannel_Interactions" }, { "type": "get", "url": "/api/openchannel/interactions/{id}/messages", "title": "Gets interaction messages", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/interactions/{id}/messages -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getMessages", "group": "Openchannel_Interactions", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelInteraction/index.js", "groupTitle": "Openchannel_Interactions" }, { "type": "put", "url": "/api/openchannel/interactions/{id}", "title": "Update an existing Interaction", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/interactions/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateInteractions", "group": "Openchannel_Interactions", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelInteraction/index.js", "groupTitle": "Openchannel_Interactions" }, { "type": "post", "url": "/api/openchannel/messages", "title": "Creates a new Message", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/messages -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateMessages", "group": "Openchannel_Messages", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "Text", "optional": false, "field": "body", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "read", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "secret", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"in\"", "\"out\"" ], "optional": false, "field": "direction", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "readAt", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelMessage/index.js", "groupTitle": "Openchannel_Messages" }, { "type": "delete", "url": "/api/openchannel/messages/{id}", "title": "Deletes a Message", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/messages/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteMessages", "group": "Openchannel_Messages", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelMessage/index.js", "groupTitle": "Openchannel_Messages" }, { "type": "get", "url": "/api/openchannel/messages/describe", "title": "Gets table info about Messages", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/messages/describe -v -u {name}:{password}", "type": "json" } ], "name": "DescribeMessages", "group": "Openchannel_Messages", "description": "

Motion will return a HTTP status code 200 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelMessage/index.js", "groupTitle": "Openchannel_Messages" }, { "type": "get", "url": "/api/openchannel/messages", "title": "Gets a list of Messages", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/messages -v -u {name}:{password}", "type": "json" } ], "name": "GetMessages", "group": "Openchannel_Messages", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/openchannel/messages?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/openchannel/messages?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/openchannel/messages?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/openchannel/messages?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/openchannel/messages?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/openchannelMessage/index.js", "groupTitle": "Openchannel_Messages" }, { "type": "get", "url": "/api/openchannel/messages/{id}", "title": "Gets a single Message", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/messages/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowMessages", "group": "Openchannel_Messages", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelMessage/index.js", "groupTitle": "Openchannel_Messages" }, { "type": "put", "url": "/api/openchannel/messages/{id}/accept", "title": "Accepts message", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/messages/{id}/accept \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "acceptMessage", "group": "Openchannel_Messages", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelMessage/index.js", "groupTitle": "Openchannel_Messages" }, { "type": "put", "url": "/api/openchannel/messages/{id}/reject", "title": "Rejects message", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/messages/{id}/reject \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "rejectMessage", "group": "Openchannel_Messages", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelMessage/index.js", "groupTitle": "Openchannel_Messages" }, { "type": "put", "url": "/api/openchannel/messages/{id}", "title": "Update an existing Message", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/messages/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateMessages", "group": "Openchannel_Messages", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelMessage/index.js", "groupTitle": "Openchannel_Messages" }, { "type": "post", "url": "/api/openchannel/reports/queue", "title": "Creates a new Openchannel Queue Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/reports/queue -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateOpenchannel_Queue_Reports", "group": "Openchannel_Queue_Reports", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "uniqueid", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "from", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "joinAt", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "leaveAt", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "acceptAt", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "exitAt", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "reason", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelQueueReport/index.js", "groupTitle": "Openchannel_Queue_Reports" }, { "type": "delete", "url": "/api/openchannel/reports/queue/{id}", "title": "Deletes a Openchannel Queue Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/reports/queue/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteOpenchannel_Queue_Reports", "group": "Openchannel_Queue_Reports", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelQueueReport/index.js", "groupTitle": "Openchannel_Queue_Reports" }, { "type": "get", "url": "/api/openchannel/reports/queue/describe", "title": "Gets table info about Openchannel Queue Reports", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/reports/queue/describe -v -u {name}:{password}", "type": "json" } ], "name": "DescribeOpenchannel_Queue_Reports", "group": "Openchannel_Queue_Reports", "description": "

Motion will return a HTTP status code 200 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelQueueReport/index.js", "groupTitle": "Openchannel_Queue_Reports" }, { "type": "get", "url": "/api/openchannel/reports/queue", "title": "Gets a list of Openchannel Queue Reports", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/reports/queue -v -u {name}:{password}", "type": "json" } ], "name": "GetOpenchannel_Queue_Reports", "group": "Openchannel_Queue_Reports", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/openchannel/reports/queue?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/openchannel/reports/queue?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/openchannel/reports/queue?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/openchannel/reports/queue?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/openchannel/reports/queue?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/openchannelQueueReport/index.js", "groupTitle": "Openchannel_Queue_Reports" }, { "type": "get", "url": "/api/openchannel/reports/queue/{id}", "title": "Gets a single Openchannel Queue Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/reports/queue/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowOpenchannel_Queue_Reports", "group": "Openchannel_Queue_Reports", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelQueueReport/index.js", "groupTitle": "Openchannel_Queue_Reports" }, { "type": "put", "url": "/api/openchannel/reports/queue/{id}", "title": "Update an existing Openchannel Queue Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/reports/queue/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateOpenchannel_Queue_Reports", "group": "Openchannel_Queue_Reports", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelQueueReport/index.js", "groupTitle": "Openchannel_Queue_Reports" }, { "type": "post", "url": "/api/openchannel/queues/{id}/users", "title": "Add agents to a queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/queues/{id}/users -d '{\"ids\": [1,2], \"penalty\": 2}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "AddAgents", "group": "Openchannel_Queues", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelQueue/index.js", "groupTitle": "Openchannel_Queues" }, { "type": "post", "url": "/api/openchannel/queues/{id}/teams", "title": "Add teams to a queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/queues/{id}/teams -d '{\"ids\": [1,2]}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "AddTeams", "group": "Openchannel_Queues", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelQueue/index.js", "groupTitle": "Openchannel_Queues" }, { "type": "post", "url": "/api/openchannel/queues", "title": "Creates a new Queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/queues -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateQueues", "group": "Openchannel_Queues", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": true, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "timeout", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"rrmemory\"", "\"beepall\"", "\"roundrobin\"" ], "optional": true, "field": "strategy", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelQueue/index.js", "groupTitle": "Openchannel_Queues" }, { "type": "delete", "url": "/api/openchannel/queues/{id}", "title": "Deletes a Queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/queues/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteQueues", "group": "Openchannel_Queues", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelQueue/index.js", "groupTitle": "Openchannel_Queues" }, { "type": "get", "url": "/api/openchannel/queues/describe", "title": "Gets table info about Queues", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/queues/describe -v -u {name}:{password}", "type": "json" } ], "name": "DescribeQueues", "group": "Openchannel_Queues", "description": "

Motion will return a HTTP status code 200 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelQueue/index.js", "groupTitle": "Openchannel_Queues" }, { "type": "get", "url": "/api/openchannel/queues/{id}/users", "title": "Gets queue agents", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/queues/{id}/users -v -u {name}:{password} -X POST", "type": "json" } ], "name": "GetAgents", "group": "Openchannel_Queues", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelQueue/index.js", "groupTitle": "Openchannel_Queues" }, { "type": "get", "url": "/api/openchannel/queues/{id}/members", "title": "GetMembers", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/queues/{id}/members -v -u {name}:{password}", "type": "json" } ], "name": "GetMembers", "group": "Openchannel_Queues", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelQueue/index.js", "groupTitle": "Openchannel_Queues" }, { "type": "get", "url": "/api/openchannel/queues", "title": "Gets a list of Queues", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/queues -v -u {name}:{password}", "type": "json" } ], "name": "GetQueues", "group": "Openchannel_Queues", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/openchannel/queues?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/openchannel/queues?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/openchannel/queues?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/openchannel/queues?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/openchannel/queues?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/openchannelQueue/index.js", "groupTitle": "Openchannel_Queues" }, { "type": "get", "url": "/api/openchannel/queues/{id}/teams", "title": "Gets queues list", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/queues/{id}/teams -v -u {name}:{password}", "type": "json" } ], "name": "GetTeams", "group": "Openchannel_Queues", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelQueue/index.js", "groupTitle": "Openchannel_Queues" }, { "type": "delete", "url": "/api/openchannel/queues/{id}/users", "title": "Removes agents from a queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/queues/{id}/users?ids=1&ids=2 -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "RemoveAgents", "group": "Openchannel_Queues", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelQueue/index.js", "groupTitle": "Openchannel_Queues" }, { "type": "get", "url": "/api/openchannel/queues/{id}", "title": "Gets a single Queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/queues/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowQueues", "group": "Openchannel_Queues", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelQueue/index.js", "groupTitle": "Openchannel_Queues" }, { "type": "put", "url": "/api/openchannel/queues/{id}", "title": "Update an existing Queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/queues/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateQueues", "group": "Openchannel_Queues", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelQueue/index.js", "groupTitle": "Openchannel_Queues" }, { "type": "post", "url": "/api/pauses", "title": "Creates a new Pause", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/pauses -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreatePauses", "group": "Pauses", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/pause/index.js", "groupTitle": "Pauses" }, { "type": "delete", "url": "/api/pauses/{id}", "title": "Deletes a Pause", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/pauses/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeletePauses", "group": "Pauses", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/pause/index.js", "groupTitle": "Pauses" }, { "type": "get", "url": "/api/pauses", "title": "Gets a list of Pauses", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/pauses -v -u {name}:{password}", "type": "json" } ], "name": "GetPauses", "group": "Pauses", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/pauses?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/pauses?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/pauses?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/pauses?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/pauses?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/pause/index.js", "groupTitle": "Pauses" }, { "type": "get", "url": "/api/pauses/{id}", "title": "Gets a single Pause", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/pauses/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowPauses", "group": "Pauses", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/pause/index.js", "groupTitle": "Pauses" }, { "type": "put", "url": "/api/pauses/{id}", "title": "Update an existing Pause", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/pauses/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updatePauses", "group": "Pauses", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/pause/index.js", "groupTitle": "Pauses" }, { "type": "get", "url": "/api/pm2/{id}", "title": "Gets a single pm2 process", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/pm2/{id} -v -u {name}:{password}", "type": "json" } ], "name": "GetPm2Process", "group": "Pm2", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/pm2/index.js", "groupTitle": "Pm2" }, { "type": "get", "url": "/api/pm2", "title": "Gets pm2 processes", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/pm2 -v -u {name}:{password}", "type": "json" } ], "name": "GetPm2Processes", "group": "Pm2", "description": "

Motion returns the pm2 processes list.

", "version": "0.0.0", "filename": "server/api/pm2/index.js", "groupTitle": "Pm2" }, { "type": "put", "url": "/api/pm2/{id}", "title": "Update an existing Process", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/pm2/{id} -d '{\"status\": \"online\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateProcesses", "group": "Pm2", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/pm2/index.js", "groupTitle": "Pm2" }, { "type": "get", "url": "/api/rpc/campaigns/", "title": "Gets a list of campaigns", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/rpc/campaigns -v -u {name}:{password}", "type": "json" } ], "name": "Campaigns", "group": "RPC_Realtime", "description": "

Motion will return a list of realtime campaigns parameters.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/rpc/index.js", "groupTitle": "RPC_Realtime" }, { "type": "get", "url": "/api/rpc/fax/accounts", "title": "Gets a list of FaxAccounts", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/rpc/fax/accounts -v -u {name}:{password}", "type": "json" } ], "name": "FaxAccounts", "group": "RPC_Realtime", "description": "

Motion will return a list of realtime fax account parameters.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/rpc/index.js", "groupTitle": "RPC_Realtime" }, { "type": "put", "url": "/api/rpc/agents/:id/capacity", "title": "Sets agent capacity", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/rpc/agents/:id/capacity -v -u {name}:{password}", "type": "json" } ], "name": "RTAgentCapacity", "group": "RPC_Realtime", "description": "

Motion will return the current agent capacity.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/rpc/index.js", "groupTitle": "RPC_Realtime" }, { "type": "get", "url": "/api/rpc/agents", "title": "Gets a list of RTAgents", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/rpc/agents -v -u {name}:{password}", "type": "json" } ], "name": "RTAgents", "group": "RPC_Realtime", "description": "

Motion will return a list of realtime agents parameters.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/rpc/index.js", "groupTitle": "RPC_Realtime" }, { "type": "get", "url": "/api/rpc/chat/queues", "title": "Gets a list of RTChatQueues", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/rpc/chat/queues -v -u {name}:{password}", "type": "json" } ], "name": "RTChatQueues", "group": "RPC_Realtime", "description": "

Motion will return a list of realtime chat queues parameters.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/rpc/index.js", "groupTitle": "RPC_Realtime" }, { "type": "get", "url": "/api/rpc/fax/queues", "title": "Gets a list of RTFaxQueues", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/rpc/fax/queues -v -u {name}:{password}", "type": "json" } ], "name": "RTFaxQueues", "group": "RPC_Realtime", "description": "

Motion will return a list of realtime fax queues parameters.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/rpc/index.js", "groupTitle": "RPC_Realtime" }, { "type": "get", "url": "/api/rpc/mail/accounts", "title": "Gets a list of RTMailAccounts", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/rpc/mail/accounts -v -u {name}:{password}", "type": "json" } ], "name": "RTMailAccounts", "group": "RPC_Realtime", "description": "

Motion will return a list of realtime mail account parameters.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/rpc/index.js", "groupTitle": "RPC_Realtime" }, { "type": "get", "url": "/api/rpc/mail/queues", "title": "Gets a list of RTMailQueues", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/rpc/mail/queues -v -u {name}:{password}", "type": "json" } ], "name": "RTMailQueues", "group": "RPC_Realtime", "description": "

Motion will return a list of realtime mail queues parameters.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/rpc/index.js", "groupTitle": "RPC_Realtime" }, { "type": "get", "url": "/api/rpc/openchannel/queues", "title": "Gets a list of RTOpenchannelQueues", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/rpc/openchannel/queues -v -u {name}:{password}", "type": "json" } ], "name": "RTOpenchannelQueues", "group": "RPC_Realtime", "description": "

Motion will return a list of realtime openchannel queues parameters.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/rpc/index.js", "groupTitle": "RPC_Realtime" }, { "type": "get", "url": "/api/rpc/outbound/channels", "title": "Gets a list of RTOutboundChannels", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/rpc/outbound/channels -v -u {name}:{password}", "type": "json" } ], "name": "RTOutboundChannels", "group": "RPC_Realtime", "description": "

Motion will return a list of realtime outbound channels.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/rpc/index.js", "groupTitle": "RPC_Realtime" }, { "type": "get", "url": "/api/rpc/sms/queues", "title": "Gets a list of RTSmsQueues", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/rpc/sms/queues -v -u {name}:{password}", "type": "json" } ], "name": "RTSmsQueues", "group": "RPC_Realtime", "description": "

Motion will return a list of realtime sms queues parameters.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/rpc/index.js", "groupTitle": "RPC_Realtime" }, { "type": "get", "url": "/api/rpc/telephones", "title": "Gets a list of RTTelephones", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/rpc/telephones -v -u {name}:{password}", "type": "json" } ], "name": "RTTelephones", "group": "RPC_Realtime", "description": "

Motion will return a list of telephones parameters.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/rpc/index.js", "groupTitle": "RPC_Realtime" }, { "type": "get", "url": "/api/rpc/trunks", "title": "Gets a list of RTTrunks", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/rpc/trunks -v -u {name}:{password}", "type": "json" } ], "name": "RTTrunks", "group": "RPC_Realtime", "description": "

Motion will return a list of realtime trunks parameters.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/rpc/index.js", "groupTitle": "RPC_Realtime" }, { "type": "get", "url": "/api/rpc/voice/channels", "title": "Gets a list of RTVoiceChannelMixMonitor", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/rpc/voice/channels/{uniqueid}/mixmonitor -v -u {name}:{password}", "type": "json" } ], "name": "RTVoiceChannelMixMonitor", "group": "RPC_Realtime", "description": "

Motion will return a list of realtime voice channel mixmonitor.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/rpc/index.js", "groupTitle": "RPC_Realtime" }, { "type": "get", "url": "/api/rpc/voice/channels", "title": "Gets a list of RTVoiceChannelStopMixMonitor", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/rpc/voice/channels/{uniqueid}/stopmixmonitor -v -u {name}:{password}", "type": "json" } ], "name": "RTVoiceChannelStopMixMonitor", "group": "RPC_Realtime", "description": "

Motion will return a list of realtime voice channel stopmixmonitor.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/rpc/index.js", "groupTitle": "RPC_Realtime" }, { "type": "get", "url": "/api/rpc/voice/channels", "title": "Gets a list of RTVoiceChannels", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/rpc/voice/channels -v -u {name}:{password}", "type": "json" } ], "name": "RTVoiceChannels", "group": "RPC_Realtime", "description": "

Motion will return a list of realtime voice channels.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/rpc/index.js", "groupTitle": "RPC_Realtime" }, { "type": "get", "url": "/api/rpc/voice/queues/channels/{uniqueid}", "title": "Gets a single RTVoiceQueueChannel", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/rpc/voice/queues/channels/{uniqueid} -v -u {name}:{password}", "type": "json" } ], "name": "RTVoiceQueueChannel", "group": "RPC_Realtime", "description": "

Motion will return a specific realtime voice queue channel.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/rpc/index.js", "groupTitle": "RPC_Realtime" }, { "type": "get", "url": "/api/rpc/voice/queues/channels/{uniqueid}/hangup", "title": "Hangup a single RTVoiceQueueChannel", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/rpc/voice/queues/channels/{uniqueid}/hangup -v -u {name}:{password}", "type": "json" } ], "name": "RTVoiceQueueChannelHangup", "group": "RPC_Realtime", "description": "

Motion will hangup a specific realtime voice queue channel.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/rpc/index.js", "groupTitle": "RPC_Realtime" }, { "type": "get", "url": "/api/rpc/voice/queues/channels/{uniqueid}/redirect/{exten}", "title": "Hangup a single RTVoiceQueueChannel", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/rpc/voice/queues/channels/{uniqueid}/redirect/{exten} -v -u {name}:{password}", "type": "json" } ], "name": "RTVoiceQueueChannelRedirect", "group": "RPC_Realtime", "description": "

Motion will redirect a specific realtime voice queue channel to a specific extension.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/rpc/index.js", "groupTitle": "RPC_Realtime" }, { "type": "get", "url": "/api/rpc/voice/queues/preview/{id}", "title": "Gets a single preview contact", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/rpc/voice/queues/preview/{id} -v -u {name}:{password}", "type": "json" } ], "name": "RTVoiceQueuePreview", "group": "RPC_Realtime", "description": "

Motion will return a specific preview contact.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/rpc/index.js", "groupTitle": "RPC_Realtime" }, { "type": "get", "url": "/api/rpc/voice/queues", "title": "Gets a list of RTVoiceQueues", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/rpc/voice/queues -v -u {name}:{password}", "type": "json" } ], "name": "RTVoiceQueues", "group": "RPC_Realtime", "description": "

Motion will return a list of realtime voice queues parameters.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/rpc/index.js", "groupTitle": "RPC_Realtime" }, { "type": "get", "url": "/api/rpc/outbound", "title": "Gets a list of RTOutbound", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/rpc/outbound -v -u {name}:{password}", "type": "json" } ], "name": "RTVoiceQueues", "group": "RPC_Realtime", "description": "

Motion will return a list of realtime outbound parameters.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/rpc/index.js", "groupTitle": "RPC_Realtime" }, { "type": "get", "url": "/api/rpc/voice/queues/channels", "title": "Gets a list of RTVoiceQueuesChannels", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/rpc/voice/queues/channels -v -u {name}:{password}", "type": "json" } ], "name": "RTVoiceQueuesChannels", "group": "RPC_Realtime", "description": "

Motion will return a list of realtime voice queues channels.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/rpc/index.js", "groupTitle": "RPC_Realtime" }, { "type": "get", "url": "/api/rpc/chat/queues/waitinginteractions", "title": "Gets a list of chatQueuesWaitingInteractions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/rpc/voice/queues/waitinginteractions -v -u {name}:{password}", "type": "json" } ], "name": "chatQueuesWaitingInteractions", "group": "RPC_Realtime", "description": "

Motion will return a list of realtime waiting chat queues interctions.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/rpc/index.js", "groupTitle": "RPC_Realtime" }, { "type": "get", "url": "/api/rpc/fax/queues/waitinginteractions", "title": "Gets a list of faxQueuesWaitingInteractions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/rpc/fax/queues/waitinginteractions -v -u {name}:{password}", "type": "json" } ], "name": "faxQueuesWaitingInteractions", "group": "RPC_Realtime", "description": "

Motion will return a list of realtime waiting fax queues interctions.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/rpc/index.js", "groupTitle": "RPC_Realtime" }, { "type": "get", "url": "/api/rpc/mail/queues/waitinginteractions", "title": "Gets a list of mailQueuesWaitingInteractions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/rpc/mail/queues/waitinginteractions -v -u {name}:{password}", "type": "json" } ], "name": "mailQueuesWaitingInteractions", "group": "RPC_Realtime", "description": "

Motion will return a list of realtime waiting mail queues interctions.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/rpc/index.js", "groupTitle": "RPC_Realtime" }, { "type": "get", "url": "/api/rpc/openchannel/queues/waitinginteractions", "title": "Gets a list of openchannelQueuesWaitingInteractions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/rpc/openchannel/queues/waitinginteractions -v -u {name}:{password}", "type": "json" } ], "name": "openchannelQueuesWaitingInteractions", "group": "RPC_Realtime", "description": "

Motion will return a list of realtime waiting openchannel queues interctions.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/rpc/index.js", "groupTitle": "RPC_Realtime" }, { "type": "get", "url": "/api/rpc/sms/queues/waitinginteractions", "title": "Gets a list of smsQueuesWaitingInteractions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/rpc/sms/queues/waitinginteractions -v -u {name}:{password}", "type": "json" } ], "name": "smsQueuesWaitingInteractions", "group": "RPC_Realtime", "description": "

Motion will return a list of realtime waiting sms queues interctions.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/rpc/index.js", "groupTitle": "RPC_Realtime" }, { "type": "post", "url": "/api/integrations/salesforce/accounts", "title": "Creates a new Salesforce Account", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/salesforce/accounts -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateSalesforce_Accounts", "group": "Salesforce_Accounts", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": true, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "username", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "remoteUri", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "password", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "clientId", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "clientSecret", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "securityToken", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "serverUrl", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"integrationTab\"", "\"newTab\"" ], "optional": true, "field": "type", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intSalesforceAccount/index.js", "groupTitle": "Salesforce_Accounts" }, { "type": "delete", "url": "/api/integrations/salesforce/accounts/{id}", "title": "Deletes a Salesforce Account", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/salesforce/accounts/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteSalesforce_Accounts", "group": "Salesforce_Accounts", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intSalesforceAccount/index.js", "groupTitle": "Salesforce_Accounts" }, { "type": "get", "url": "/api/integrations/salesforce/accounts", "title": "Gets a list of Salesforce Accounts", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/salesforce/accounts -v -u {name}:{password}", "type": "json" } ], "name": "GetSalesforce_Accounts", "group": "Salesforce_Accounts", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/integrations/salesforce/accounts?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/integrations/salesforce/accounts?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/integrations/salesforce/accounts?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/integrations/salesforce/accounts?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/integrations/salesforce/accounts?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/intSalesforceAccount/index.js", "groupTitle": "Salesforce_Accounts" }, { "type": "get", "url": "/api/integrations/salesforce/accounts/{id}", "title": "Gets a single Salesforce Account", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/salesforce/accounts/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowSalesforce_Accounts", "group": "Salesforce_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intSalesforceAccount/index.js", "groupTitle": "Salesforce_Accounts" }, { "type": "post", "url": "/api/integrations/salesforce/accounts/{id}/configurations", "title": "Creates new configuration", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/salesforce/accounts/{id}/configurations -d '{\"name\": \"conf1\"}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addConfiguration", "group": "Salesforce_Accounts", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intSalesforceAccount/index.js", "groupTitle": "Salesforce_Accounts" }, { "type": "get", "url": "/api/integrations/salesforce/accounts/{id}/configurations", "title": "Gets account configurations", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/salesforce/accounts/{id}/configurations -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getConfigurations", "group": "Salesforce_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intSalesforceAccount/index.js", "groupTitle": "Salesforce_Accounts" }, { "type": "get", "url": "/api/integrations/salesforce/accounts/{id}/fields", "title": "Gets account fields", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/salesforce/accounts/{id}/fields -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getFields", "group": "Salesforce_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intSalesforceAccount/index.js", "groupTitle": "Salesforce_Accounts" }, { "type": "put", "url": "/api/integrations/salesforce/accounts/{id}", "title": "Update an existing Salesforce Account", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/salesforce/accounts/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateSalesforce_Accounts", "group": "Salesforce_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intSalesforceAccount/index.js", "groupTitle": "Salesforce_Accounts" }, { "type": "post", "url": "/api/integrations/salesforce/configurations", "title": "Creates a new Salesforce Configuration", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/salesforce/configurations -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateSalesforce_Configurations", "group": "Salesforce_Configurations", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": true, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"contact_lead\"", "\"contact\"", "\"lead\"" ], "optional": true, "field": "moduleSearch", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"nothing\"", "\"contact\"", "\"lead\"" ], "optional": true, "field": "moduleCreate", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intSalesforceConfiguration/index.js", "groupTitle": "Salesforce_Configurations" }, { "type": "delete", "url": "/api/integrations/salesforce/configurations/{id}", "title": "Deletes a Salesforce Configuration", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/salesforce/configurations/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteSalesforce_Configurations", "group": "Salesforce_Configurations", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intSalesforceConfiguration/index.js", "groupTitle": "Salesforce_Configurations" }, { "type": "get", "url": "/api/integrations/salesforce/configurations", "title": "Gets a list of Salesforce Configurations", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/salesforce/configurations -v -u {name}:{password}", "type": "json" } ], "name": "GetSalesforce_Configurations", "group": "Salesforce_Configurations", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/integrations/salesforce/configurations?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/integrations/salesforce/configurations?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/integrations/salesforce/configurations?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/integrations/salesforce/configurations?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/integrations/salesforce/configurations?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/intSalesforceConfiguration/index.js", "groupTitle": "Salesforce_Configurations" }, { "type": "get", "url": "/api/integrations/salesforce/configurations/{id}", "title": "Gets a single Salesforce Configuration", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/salesforce/configurations/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowSalesforce_Configurations", "group": "Salesforce_Configurations", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intSalesforceConfiguration/index.js", "groupTitle": "Salesforce_Configurations" }, { "type": "get", "url": "/api/integrations/salesforce/configurations/{id}/descriptions", "title": "Gets configurations descriptions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/salesforce/configurations/{id}/descriptions -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getDescriptions", "group": "Salesforce_Configurations", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intSalesforceConfiguration/index.js", "groupTitle": "Salesforce_Configurations" }, { "type": "get", "url": "/api/integrations/salesforce/configurations/{id}/fields", "title": "Gets configurations fields", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/salesforce/configurations/{id}/fields -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getFields", "group": "Salesforce_Configurations", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intSalesforceConfiguration/index.js", "groupTitle": "Salesforce_Configurations" }, { "type": "get", "url": "/api/integrations/salesforce/configurations/{id}/subjects", "title": "Gets configurations subjects", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/salesforce/configurations/{id}/subjects -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getSubjects", "group": "Salesforce_Configurations", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intSalesforceConfiguration/index.js", "groupTitle": "Salesforce_Configurations" }, { "type": "put", "url": "/api/integrations/salesforce/configurations/{id}", "title": "Update an existing Salesforce Configuration", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/salesforce/configurations/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateSalesforce_Configurations", "group": "Salesforce_Configurations", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intSalesforceConfiguration/index.js", "groupTitle": "Salesforce_Configurations" }, { "type": "post", "url": "/api/integrations/salesforce/fields", "title": "Creates a new Salesforce Field", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/salesforce/fields -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateSalesforce_Fields", "group": "Salesforce_Fields", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "allowedValues": [ "\"string\"", "\"variable\"", "\"customVariable\"", "\"keyValue\"" ], "optional": true, "field": "type", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "content", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "key", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"string\"", "\"variable\"", "\"customVariable\"" ], "optional": true, "field": "keyType", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "keyContent", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "idField", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "variableName", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intSalesforceField/index.js", "groupTitle": "Salesforce_Fields" }, { "type": "delete", "url": "/api/integrations/salesforce/fields/{id}", "title": "Deletes a Salesforce Field", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/salesforce/fields/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteSalesforce_Fields", "group": "Salesforce_Fields", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intSalesforceField/index.js", "groupTitle": "Salesforce_Fields" }, { "type": "get", "url": "/api/integrations/salesforce/fields", "title": "Gets a list of Salesforce Fields", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/salesforce/fields -v -u {name}:{password}", "type": "json" } ], "name": "GetSalesforce_Fields", "group": "Salesforce_Fields", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/integrations/salesforce/fields?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/integrations/salesforce/fields?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/integrations/salesforce/fields?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/integrations/salesforce/fields?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/integrations/salesforce/fields?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/intSalesforceField/index.js", "groupTitle": "Salesforce_Fields" }, { "type": "get", "url": "/api/integrations/salesforce/fields/{id}", "title": "Gets a single Salesforce Field", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/salesforce/fields/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowSalesforce_Fields", "group": "Salesforce_Fields", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intSalesforceField/index.js", "groupTitle": "Salesforce_Fields" }, { "type": "put", "url": "/api/integrations/salesforce/fields/{id}", "title": "Update an existing Salesforce Field", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/salesforce/fields/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateSalesforce_Fields", "group": "Salesforce_Fields", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intSalesforceField/index.js", "groupTitle": "Salesforce_Fields" }, { "type": "post", "url": "/api/schedules", "title": "Creates a new Schedule", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/schedules -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateSchedules", "group": "Schedules", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" }, { "group": "Body", "type": "Boolean", "optional": false, "field": "active", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "cron", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "startAt", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "endAt", "description": "" }, { "group": "Body", "type": "Integer", "optional": false, "field": "subtractNumber", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"years\"", "\"quarters\"", "\"months\"", "\"weeks\"", "\"days\"", "\"hours\"", "\"minutes\"" ], "optional": false, "field": "subtractUnit", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"csv\"", "\"pdf\"", "\"xlsx\"" ], "optional": false, "field": "output", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"custom\"", "\"default\"" ], "optional": false, "field": "type", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "sendMail", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "email", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/schedule/index.js", "groupTitle": "Schedules" }, { "type": "delete", "url": "/api/schedules/{id}", "title": "Deletes a Schedule", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/schedules/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteSchedules", "group": "Schedules", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/schedule/index.js", "groupTitle": "Schedules" }, { "type": "get", "url": "/api/schedules", "title": "Gets a list of Schedules", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/schedules -v -u {name}:{password}", "type": "json" } ], "name": "GetSchedules", "group": "Schedules", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/schedules?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/schedules?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/schedules?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/schedules?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/schedules?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/schedule/index.js", "groupTitle": "Schedules" }, { "type": "get", "url": "/api/schedules/{id}", "title": "Gets a single Schedule", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/schedules/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowSchedules", "group": "Schedules", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/schedule/index.js", "groupTitle": "Schedules" }, { "type": "put", "url": "/api/schedules/{id}", "title": "Update an existing Schedule", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/schedules/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateSchedules", "group": "Schedules", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/schedule/index.js", "groupTitle": "Schedules" }, { "type": "get", "url": "/api/settings", "title": "Gets a list of Settings", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/settings -v -u {name}:{password}", "type": "json" } ], "name": "GetSettings", "group": "Settings", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/settings?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/settings?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/settings?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/settings?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/settings?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/setting/index.js", "groupTitle": "Settings" }, { "type": "get", "url": "/api/settings/{id}", "title": "Gets a single Setting", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/settings/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowSettings", "group": "Settings", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/setting/index.js", "groupTitle": "Settings" }, { "type": "put", "url": "/api/settings/{id}", "title": "Update settings", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/settings/{id} -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "Update", "group": "Settings", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/setting/index.js", "groupTitle": "Settings" }, { "type": "post", "url": "/api/settings/{id}/logo", "title": "Add logo", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/settings/{id}/logo -H 'Content-Type: multipart/form-data' -F 'file=@{filename}' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addLogo", "group": "Settings", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/setting/index.js", "groupTitle": "Settings" }, { "type": "post", "url": "/api/settings/{id}/logo_login", "title": "Add logo login", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/settings/{id}/logo_login -H 'Content-Type: multipart/form-data' -F 'file=@{filename}' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addLogoLogin", "group": "Settings", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/setting/index.js", "groupTitle": "Settings" }, { "type": "get", "url": "/api/settings/{id}/gdpr", "title": "Get gdpr settings", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/settings/{id}/gdpr -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getGdpr", "group": "Settings", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/setting/index.js", "groupTitle": "Settings" }, { "type": "get", "url": "/api/settings/{id}/logo", "title": "Get logo", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/settings/{id}/logo -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getLogo", "group": "Settings", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/setting/index.js", "groupTitle": "Settings" }, { "type": "get", "url": "/api/settings/{id}/logo_login", "title": "Get logo login", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/settings/{id}/logo_login -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getLogoLogin", "group": "Settings", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/setting/index.js", "groupTitle": "Settings" }, { "type": "post", "url": "/api/sms/accounts", "title": "Creates a new Account", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/accounts -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateAccounts", "group": "Sms_Accounts", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "key", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "remote", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "token", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "phone", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"twilio\"", "\"skebby\"", "\"connectel\"", "\"clicksend\"", "\"plivo\"" ], "optional": true, "field": "type", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "accountSid", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "authToken", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"basic\"", "\"classic\"", "\"classic+\"" ], "optional": true, "field": "smsMethod", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "username", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "password", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "senderString", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "deliveryReport", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsAccount/index.js", "groupTitle": "Sms_Accounts" }, { "type": "delete", "url": "/api/sms/accounts/{id}", "title": "Deletes a Account", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/accounts/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteAccounts", "group": "Sms_Accounts", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsAccount/index.js", "groupTitle": "Sms_Accounts" }, { "type": "get", "url": "/api/sms/accounts/describe", "title": "Gets table info about Accounts", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/accounts/describe -v -u {name}:{password}", "type": "json" } ], "name": "DescribeAccounts", "group": "Sms_Accounts", "description": "

Motion will return a HTTP status code 200 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsAccount/index.js", "groupTitle": "Sms_Accounts" }, { "type": "get", "url": "/api/sms/accounts", "title": "Gets a list of Accounts", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/accounts -v -u {name}:{password}", "type": "json" } ], "name": "GetAccounts", "group": "Sms_Accounts", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/sms/accounts?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/sms/accounts?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/sms/accounts?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/sms/accounts?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/sms/accounts?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/smsAccount/index.js", "groupTitle": "Sms_Accounts" }, { "type": "delete", "url": "/api/sms/accounts/{id}/canned_answers", "title": "Removes canned answers from account", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/accounts/{id}/canned_answers?ids=1&ids=2 -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "RemoveAnswers", "group": "Sms_Accounts", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsAccount/index.js", "groupTitle": "Sms_Accounts" }, { "type": "get", "url": "/api/sms/accounts/{id}", "title": "Gets a single Account", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/accounts/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowAccounts", "group": "Sms_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsAccount/index.js", "groupTitle": "Sms_Accounts" }, { "type": "put", "url": "/api/sms/messages/{id}/accept", "title": "Accepts message", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/messages/{id}/accept \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "acceptMessage", "group": "Sms_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsMessage/index.js", "groupTitle": "Sms_Accounts" }, { "type": "post", "url": "/api/sms/accounts/{id}/canned_answers", "title": "Creates new canned answer", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/accounts/{id}/canned_answers -d '{\"name\": \"vip\"}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addAnswer", "group": "Sms_Accounts", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "key", "description": "" }, { "group": "Body", "type": "Text", "optional": false, "field": "value", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsAccount/index.js", "groupTitle": "Sms_Accounts" }, { "type": "post", "url": "/api/sms/accounts/{id}/applications", "title": "Creates new applications", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/accounts/{id}/applications -d '[{\"app\": \"queue\", \"...\": \"...\"}]' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addApplications", "group": "Sms_Accounts", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "Integer", "optional": false, "field": "priority", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "app", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "appdata", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "interval", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsAccount/index.js", "groupTitle": "Sms_Accounts" }, { "type": "post", "url": "/api/sms/accounts/{id}/dispositions", "title": "Creates new disposition", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/accounts/{id}/dispositions -d '{\"name\": \"Satisfied\"}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addDisposition", "group": "Sms_Accounts", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "name", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsAccount/index.js", "groupTitle": "Sms_Accounts" }, { "type": "post", "url": "/api/sms/accounts/{id}/dispositions", "title": "Creates many dispositions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/accounts/{id}/dispositions -d '[{\"name\": \"Satisfied\"}]' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addDispositions", "group": "Sms_Accounts", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "name", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsAccount/index.js", "groupTitle": "Sms_Accounts" }, { "type": "get", "url": "/api/sms/accounts/{id}/canned_answers", "title": "Gets account canned answers", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/accounts/{id}/canned_answers -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getAnswers", "group": "Sms_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsAccount/index.js", "groupTitle": "Sms_Accounts" }, { "type": "get", "url": "/api/sms/accounts/{id}/applications", "title": "Gets account applications", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/accounts/{id}/applications -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getApplications", "group": "Sms_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsAccount/index.js", "groupTitle": "Sms_Accounts" }, { "type": "get", "url": "/api/sms/accounts/{id}/dispositions", "title": "Gets account dispositions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/accounts/{id}/dispositions -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getDispositions", "group": "Sms_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsAccount/index.js", "groupTitle": "Sms_Accounts" }, { "type": "get", "url": "/api/sms/accounts/{id}/interactions", "title": "Gets Sms Account interactions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/accounts/{id}/interactions -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getInteractions", "group": "Sms_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsAccount/index.js", "groupTitle": "Sms_Accounts" }, { "type": "post", "url": "/api/sms/accounts/{id}/notify", "title": "Notify new message", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/accounts/{id}/notify -d '{\"body\": \"hello world\", \"...\": \"...\"}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "notify", "group": "Sms_Accounts", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

This API is used to create a new sms message to be sent to the system.

", "version": "0.0.0", "filename": "server/api/smsAccount/index.js", "groupTitle": "Sms_Accounts" }, { "type": "put", "url": "/api/sms/messages/{id}/reject", "title": "Rejects message", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/messages/{id}/reject \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "rejectMessage", "group": "Sms_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsMessage/index.js", "groupTitle": "Sms_Accounts" }, { "type": "post", "url": "/api/sms/accounts/{id}/send", "title": "Send new sms message", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/accounts/{id}/send -d '{from: '+39333123456', body: 'This is a test'}' -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "sendSms", "group": "Sms_Accounts", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsAccount/index.js", "groupTitle": "Sms_Accounts" }, { "type": "post", "url": "/api/sms/messages/{id}/status", "title": "Receive message status", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/messages/{id}/status \\ \n -H 'Content-Type: application/json' -v -X POST", "type": "json" } ], "name": "statusMessage", "group": "Sms_Accounts", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsMessage/index.js", "groupTitle": "Sms_Accounts" }, { "type": "post", "url": "/api/sms/accounts/{id}/status", "title": "Receive message status", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/accounts/{id}/status \\ \n -H 'Content-Type: application/json' -v -X POST", "type": "json" } ], "name": "statusMessage", "group": "Sms_Accounts", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsAccount/index.js", "groupTitle": "Sms_Accounts" }, { "type": "put", "url": "/api/sms/accounts/{id}", "title": "Update an existing Account", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/accounts/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateAccounts", "group": "Sms_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsAccount/index.js", "groupTitle": "Sms_Accounts" }, { "type": "post", "url": "/api/sms/applications", "title": "Creates a new Application", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/applications -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateApplications", "group": "Sms_Applications", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "Integer", "optional": false, "field": "priority", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "app", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "appdata", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "interval", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsApplication/index.js", "groupTitle": "Sms_Applications" }, { "type": "delete", "url": "/api/sms/applications/{id}", "title": "Deletes a Application", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/applications/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteApplications", "group": "Sms_Applications", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsApplication/index.js", "groupTitle": "Sms_Applications" }, { "type": "get", "url": "/api/sms/applications", "title": "Gets a list of Applications", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/applications -v -u {name}:{password}", "type": "json" } ], "name": "GetApplications", "group": "Sms_Applications", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/sms/applications?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/sms/applications?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/sms/applications?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/sms/applications?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/sms/applications?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/smsApplication/index.js", "groupTitle": "Sms_Applications" }, { "type": "get", "url": "/api/sms/applications/{id}", "title": "Gets a single Application", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/applications/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowApplications", "group": "Sms_Applications", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsApplication/index.js", "groupTitle": "Sms_Applications" }, { "type": "put", "url": "/api/sms/applications/{id}", "title": "Update an existing Application", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/applications/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateApplications", "group": "Sms_Applications", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsApplication/index.js", "groupTitle": "Sms_Applications" }, { "type": "post", "url": "/api/sms/dispositions", "title": "Creates a new Disposition", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/dispositions -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateDispositions", "group": "Sms_Dispositions", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "name", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsDisposition/index.js", "groupTitle": "Sms_Dispositions" }, { "type": "delete", "url": "/api/sms/dispositions/{id}", "title": "Deletes a Disposition", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/dispositions/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteDispositions", "group": "Sms_Dispositions", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsDisposition/index.js", "groupTitle": "Sms_Dispositions" }, { "type": "get", "url": "/api/sms/dispositions/{id}", "title": "Gets a single Disposition", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/dispositions/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowDispositions", "group": "Sms_Dispositions", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsDisposition/index.js", "groupTitle": "Sms_Dispositions" }, { "type": "put", "url": "/api/sms/dispositions/{id}", "title": "Update an existing Disposition", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/dispositions/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateDispositions", "group": "Sms_Dispositions", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsDisposition/index.js", "groupTitle": "Sms_Dispositions" }, { "type": "post", "url": "/api/sms/interactions/{id}/tags", "title": "Add tags to the interaction", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/interaction/{id}/tags -d '{\"ids\": [1,2]}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "AddTags", "group": "Sms_Interactions", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsInteraction/index.js", "groupTitle": "Sms_Interactions" }, { "type": "post", "url": "/api/sms/interactions", "title": "Creates a new Interaction", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/interactions -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateInteractions", "group": "Sms_Interactions", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "Boolean", "optional": true, "field": "closed", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "closedAt", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "disposition", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "note", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "phone", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "read1stAt", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"in\"", "\"out\"" ], "optional": false, "field": "firstMsgDirection", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "lastMsgAt", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"in\"", "\"out\"" ], "optional": false, "field": "lastMsgDirection", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsInteraction/index.js", "groupTitle": "Sms_Interactions" }, { "type": "delete", "url": "/api/sms/interactions/{id}", "title": "Deletes a Interaction", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/interactions/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteInteractions", "group": "Sms_Interactions", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsInteraction/index.js", "groupTitle": "Sms_Interactions" }, { "type": "get", "url": "/api/sms/interactions/describe", "title": "Gets table info about Interactions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/interactions/describe -v -u {name}:{password}", "type": "json" } ], "name": "DescribeInteractions", "group": "Sms_Interactions", "description": "

Motion will return a HTTP status code 200 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsInteraction/index.js", "groupTitle": "Sms_Interactions" }, { "type": "get", "url": "/api/sms/interactions", "title": "Gets a list of Interactions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/interactions -v -u {name}:{password}", "type": "json" } ], "name": "GetInteractions", "group": "Sms_Interactions", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/sms/interactions?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/sms/interactions?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/sms/interactions?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/sms/interactions?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/sms/interactions?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/smsInteraction/index.js", "groupTitle": "Sms_Interactions" }, { "type": "delete", "url": "/api/sms/interactions/{id}/tags", "title": "Removes tags from interaction", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/interactions/{id}/tags?ids=1&ids=2 -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "RemoveTags", "group": "Sms_Interactions", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsInteraction/index.js", "groupTitle": "Sms_Interactions" }, { "type": "get", "url": "/api/sms/interactions/{id}", "title": "Gets a single Interaction", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/interactions/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowInteractions", "group": "Sms_Interactions", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsInteraction/index.js", "groupTitle": "Sms_Interactions" }, { "type": "post", "url": "/api/sms/interactions/{id}/messages", "title": "Creates new messages", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/interactions/{id}/messages -d '[{\"to\": \"+3901119886500\", \"...\": \"...\"}]' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addMessage", "group": "Sms_Interactions", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "Text", "optional": false, "field": "body", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "read", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"in\"", "\"out\"" ], "optional": false, "field": "direction", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "messageId", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "phone", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "readAt", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "secret", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsInteraction/index.js", "groupTitle": "Sms_Interactions" }, { "type": "get", "url": "/api/sms/interactions/{id}/messages", "title": "Gets interaction messages", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/interactions/{id}/messages -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getMessages", "group": "Sms_Interactions", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsInteraction/index.js", "groupTitle": "Sms_Interactions" }, { "type": "put", "url": "/api/sms/interactions/{id}", "title": "Update an existing Interaction", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/interactions/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateInteractions", "group": "Sms_Interactions", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsInteraction/index.js", "groupTitle": "Sms_Interactions" }, { "type": "post", "url": "/api/sms/messages", "title": "Creates a new Message", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/messages -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateMessages", "group": "Sms_Messages", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "Text", "optional": false, "field": "body", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "read", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"in\"", "\"out\"" ], "optional": false, "field": "direction", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "messageId", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "phone", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "readAt", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "secret", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsMessage/index.js", "groupTitle": "Sms_Messages" }, { "type": "delete", "url": "/api/sms/messages/{id}", "title": "Deletes a Message", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/messages/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteMessages", "group": "Sms_Messages", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsMessage/index.js", "groupTitle": "Sms_Messages" }, { "type": "get", "url": "/api/sms/messages/describe", "title": "Gets table info about Messages", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/messages/describe -v -u {name}:{password}", "type": "json" } ], "name": "DescribeMessages", "group": "Sms_Messages", "description": "

Motion will return a HTTP status code 200 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsMessage/index.js", "groupTitle": "Sms_Messages" }, { "type": "get", "url": "/api/sms/messages", "title": "Gets a list of Messages", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/messages -v -u {name}:{password}", "type": "json" } ], "name": "GetMessages", "group": "Sms_Messages", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/sms/messages?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/sms/messages?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/sms/messages?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/sms/messages?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/sms/messages?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/smsMessage/index.js", "groupTitle": "Sms_Messages" }, { "type": "get", "url": "/api/sms/messages/{id}", "title": "Gets a single Message", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/messages/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowMessages", "group": "Sms_Messages", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsMessage/index.js", "groupTitle": "Sms_Messages" }, { "type": "put", "url": "/api/sms/messages/{id}", "title": "Update an existing Message", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/messages/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateMessages", "group": "Sms_Messages", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsMessage/index.js", "groupTitle": "Sms_Messages" }, { "type": "post", "url": "/api/sms/reports/queue", "title": "Creates a new Sms Queue Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/reports/queue -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateSms_Queue_Reports", "group": "Sms_Queue_Reports", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "uniqueid", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "from", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "joinAt", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "leaveAt", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "acceptAt", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "exitAt", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "reason", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsQueueReport/index.js", "groupTitle": "Sms_Queue_Reports" }, { "type": "delete", "url": "/api/sms/reports/queue/{id}", "title": "Deletes a Sms Queue Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/reports/queue/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteSms_Queue_Reports", "group": "Sms_Queue_Reports", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsQueueReport/index.js", "groupTitle": "Sms_Queue_Reports" }, { "type": "get", "url": "/api/sms/reports/queue/describe", "title": "Gets table info about Sms Queue Reports", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/reports/queue/describe -v -u {name}:{password}", "type": "json" } ], "name": "DescribeSms_Queue_Reports", "group": "Sms_Queue_Reports", "description": "

Motion will return a HTTP status code 200 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsQueueReport/index.js", "groupTitle": "Sms_Queue_Reports" }, { "type": "get", "url": "/api/sms/reports/queue", "title": "Gets a list of Sms Queue Reports", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/reports/queue -v -u {name}:{password}", "type": "json" } ], "name": "GetSms_Queue_Reports", "group": "Sms_Queue_Reports", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/sms/reports/queue?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/sms/reports/queue?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/sms/reports/queue?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/sms/reports/queue?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/sms/reports/queue?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/smsQueueReport/index.js", "groupTitle": "Sms_Queue_Reports" }, { "type": "get", "url": "/api/sms/reports/queue/{id}", "title": "Gets a single Sms Queue Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/reports/queue/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowSms_Queue_Reports", "group": "Sms_Queue_Reports", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsQueueReport/index.js", "groupTitle": "Sms_Queue_Reports" }, { "type": "put", "url": "/api/sms/reports/queue/{id}", "title": "Update an existing Sms Queue Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/reports/queue/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateSms_Queue_Reports", "group": "Sms_Queue_Reports", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsQueueReport/index.js", "groupTitle": "Sms_Queue_Reports" }, { "type": "post", "url": "/api/sms/queues/{id}/users", "title": "Add agents to a queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/queues/{id}/users -d '{\"ids\": [1,2], \"penalty\": 2}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "AddAgents", "group": "Sms_Queues", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsQueue/index.js", "groupTitle": "Sms_Queues" }, { "type": "post", "url": "/api/sms/queues/{id}/teams", "title": "Add teams to a queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/queues/{id}/teams -d '{\"ids\": [1,2]}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "AddTeams", "group": "Sms_Queues", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsQueue/index.js", "groupTitle": "Sms_Queues" }, { "type": "post", "url": "/api/sms/queues", "title": "Creates a new Queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/queues -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateQueues", "group": "Sms_Queues", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": true, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "timeout", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"rrmemory\"", "\"beepall\"", "\"roundrobin\"" ], "optional": true, "field": "strategy", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsQueue/index.js", "groupTitle": "Sms_Queues" }, { "type": "delete", "url": "/api/sms/queues/{id}", "title": "Deletes a Queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/queues/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteQueues", "group": "Sms_Queues", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsQueue/index.js", "groupTitle": "Sms_Queues" }, { "type": "get", "url": "/api/sms/queues/describe", "title": "Gets table info about Queues", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/queues/describe -v -u {name}:{password}", "type": "json" } ], "name": "DescribeQueues", "group": "Sms_Queues", "description": "

Motion will return a HTTP status code 200 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsQueue/index.js", "groupTitle": "Sms_Queues" }, { "type": "get", "url": "/api/sms/queues/{id}/users", "title": "Gets queue agents", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/queues/{id}/users -v -u {name}:{password} -X POST", "type": "json" } ], "name": "GetAgents", "group": "Sms_Queues", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsQueue/index.js", "groupTitle": "Sms_Queues" }, { "type": "get", "url": "/api/sms/queues/{id}/members", "title": "GetMembers", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/queues/{id}/members -v -u {name}:{password}", "type": "json" } ], "name": "GetMembers", "group": "Sms_Queues", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsQueue/index.js", "groupTitle": "Sms_Queues" }, { "type": "get", "url": "/api/sms/queues", "title": "Gets a list of Queues", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/queues -v -u {name}:{password}", "type": "json" } ], "name": "GetQueues", "group": "Sms_Queues", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/sms/queues?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/sms/queues?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/sms/queues?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/sms/queues?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/sms/queues?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/smsQueue/index.js", "groupTitle": "Sms_Queues" }, { "type": "get", "url": "/api/sms/queues/{id}/teams", "title": "Gets queues list", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/queues/{id}/teams -v -u {name}:{password}", "type": "json" } ], "name": "GetTeams", "group": "Sms_Queues", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsQueue/index.js", "groupTitle": "Sms_Queues" }, { "type": "delete", "url": "/api/sms/queues/{id}/users", "title": "Removes agents from a queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/queues/{id}/users?ids=1&ids=2 -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "RemoveAgents", "group": "Sms_Queues", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsQueue/index.js", "groupTitle": "Sms_Queues" }, { "type": "get", "url": "/api/sms/queues/{id}", "title": "Gets a single Queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/queues/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowQueues", "group": "Sms_Queues", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsQueue/index.js", "groupTitle": "Sms_Queues" }, { "type": "put", "url": "/api/sms/queues/{id}", "title": "Update an existing Queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/queues/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateQueues", "group": "Sms_Queues", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsQueue/index.js", "groupTitle": "Sms_Queues" }, { "type": "get", "url": "/api/sounds", "title": "Gets a list of Sounds", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sounds -v -u {name}:{password}", "type": "json" } ], "name": "GetSounds", "group": "Sounds", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/sounds?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/sounds?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/sounds?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/sounds?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/sounds?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/sound/index.js", "groupTitle": "Sounds" }, { "type": "get", "url": "/api/sounds/{id}", "title": "Gets a single Sound", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sounds/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowSounds", "group": "Sounds", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/sound/index.js", "groupTitle": "Sounds" }, { "type": "post", "url": "/api/sounds", "title": "Create a new sound", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sounds -H 'Content-Type: multipart/form-data' -F 'file=@{filename}' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addSound", "group": "Sounds", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/sound/index.js", "groupTitle": "Sounds" }, { "type": "delete", "url": "/api/sounds/{id}", "title": "Deletes a sound", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sounds/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "destroySound", "group": "Sounds", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/sound/index.js", "groupTitle": "Sounds" }, { "type": "get", "url": "/api/sounds/{id}/download", "title": "Download Sound", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sounds/{id}/download -v -u {name}:{password} -X GET", "type": "json" } ], "name": "download", "group": "Sounds", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/sound/index.js", "groupTitle": "Sounds" }, { "type": "put", "url": "/api/sounds", "title": "Update an existing new sound", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sounds -d '[\"name\": \"sound_name\", \"description\": \"sound_desc\"]' -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateSound", "group": "Sounds", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/sound/index.js", "groupTitle": "Sounds" }, { "type": "post", "url": "/api/square/details/reports", "title": "Creates a new Square Detail Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/square/details/reports -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateSquare_Detail_Reports", "group": "Square_Details_Reports", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": true, "field": "uniqueid", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "node", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "application", "description": "" }, { "group": "Body", "type": "Text", "optional": true, "field": "data", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "project_name", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "callerid", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/squareReportDetail/index.js", "groupTitle": "Square_Details_Reports" }, { "type": "delete", "url": "/api/square/details/reports/{id}", "title": "Deletes a Square Detail Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/square/details/reports/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteSquare_Detail_Reports", "group": "Square_Details_Reports", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/squareReportDetail/index.js", "groupTitle": "Square_Details_Reports" }, { "type": "get", "url": "/api/square/details/reports/describe", "title": "Gets table info about Square Detail Reports", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/square/details/reports/describe -v -u {name}:{password}", "type": "json" } ], "name": "DescribeSquare_Detail_Reports", "group": "Square_Details_Reports", "description": "

Motion will return a HTTP status code 200 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/squareReportDetail/index.js", "groupTitle": "Square_Details_Reports" }, { "type": "get", "url": "/api/square/details/reports", "title": "Gets a list of Square Detail Reports", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/square/details/reports -v -u {name}:{password}", "type": "json" } ], "name": "GetSquare_Detail_Reports", "group": "Square_Details_Reports", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/square/details/reports?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/square/details/reports?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/square/details/reports?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/square/details/reports?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/square/details/reports?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/squareReportDetail/index.js", "groupTitle": "Square_Details_Reports" }, { "type": "get", "url": "/api/square/details/reports/{id}", "title": "Gets a single Square Detail Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/square/details/reports/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowSquare_Detail_Reports", "group": "Square_Details_Reports", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/squareReportDetail/index.js", "groupTitle": "Square_Details_Reports" }, { "type": "put", "url": "/api/square/details/reports/{id}", "title": "Update an existing Square Detail Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/square/details/reports/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateSquare_Detail_Reports", "group": "Square_Details_Reports", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/squareReportDetail/index.js", "groupTitle": "Square_Details_Reports" }, { "type": "post", "url": "/api/square/odbc", "title": "Creates a new ODBC", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/square/odbc -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateODBCs", "group": "Square_ODBC", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "dsn", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/squareOdbc/index.js", "groupTitle": "Square_ODBC" }, { "type": "delete", "url": "/api/square/odbc/{id}", "title": "Deletes a ODBC", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/square/odbc/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteODBCs", "group": "Square_ODBC", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/squareOdbc/index.js", "groupTitle": "Square_ODBC" }, { "type": "get", "url": "/api/square/odbc", "title": "Gets a list of ODBCs", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/square/odbc -v -u {name}:{password}", "type": "json" } ], "name": "GetODBCs", "group": "Square_ODBC", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/square/odbc?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/square/odbc?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/square/odbc?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/square/odbc?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/square/odbc?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/squareOdbc/index.js", "groupTitle": "Square_ODBC" }, { "type": "get", "url": "/api/square/odbc/{id}", "title": "Gets a single ODBC", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/square/odbc/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowODBCs", "group": "Square_ODBC", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/squareOdbc/index.js", "groupTitle": "Square_ODBC" }, { "type": "get", "url": "/api/square/odbc/{id}/test", "title": "Test Odbc", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/square/odbc/{id}/test -v -u {name}:{password} -X GET", "type": "json" } ], "name": "test", "group": "Square_ODBC", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/squareOdbc/index.js", "groupTitle": "Square_ODBC" }, { "type": "put", "url": "/api/square/odbc/{id}", "title": "Update an existing ODBC", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/square/odbc/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateODBCs", "group": "Square_ODBC", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/squareOdbc/index.js", "groupTitle": "Square_ODBC" }, { "type": "post", "url": "/api/square/projects", "title": "Creates a new Project", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/square/projects -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateProjects", "group": "Square_Projects", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" }, { "group": "Body", "type": "Text", "optional": true, "field": "notes", "description": "" }, { "group": "Body", "type": "Blob", "optional": true, "field": "preproduction", "description": "" }, { "group": "Body", "type": "Blob", "optional": true, "field": "production", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/squareProject/index.js", "groupTitle": "Square_Projects" }, { "type": "delete", "url": "/api/square/projects/{id}", "title": "Deletes a Project", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/square/projects/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteProjects", "group": "Square_Projects", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/squareProject/index.js", "groupTitle": "Square_Projects" }, { "type": "get", "url": "/api/square/projects", "title": "Gets a list of Projects", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/square/projects -v -u {name}:{password}", "type": "json" } ], "name": "GetProjects", "group": "Square_Projects", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/square/projects?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/square/projects?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/square/projects?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/square/projects?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/square/projects?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/squareProject/index.js", "groupTitle": "Square_Projects" }, { "type": "get", "url": "/api/square/projects/{id}", "title": "Gets a single Project", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/square/projects/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowProjects", "group": "Square_Projects", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/squareProject/index.js", "groupTitle": "Square_Projects" }, { "type": "put", "url": "/api/square/projects/{id}", "title": "Update an existing Project", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/square/projects/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateProjects", "group": "Square_Projects", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/squareProject/index.js", "groupTitle": "Square_Projects" }, { "type": "post", "url": "/api/square/recordings", "title": "Creates a new Recording", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/square/recordings -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateRecordings", "group": "Square_Recordings", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": true, "field": "uniqueid", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "callerid", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "calleridname", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "context", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "extension", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "priority", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "accountcode", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "dnid", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "projectName", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "saveName", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "filename", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "savePath", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/squareRecording/index.js", "groupTitle": "Square_Recordings" }, { "type": "delete", "url": "/api/square/recordings/{id}", "title": "Deletes a Recording", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/square/recordings/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteRecordings", "group": "Square_Recordings", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/squareRecording/index.js", "groupTitle": "Square_Recordings" }, { "type": "get", "url": "/api/square/recordings", "title": "Gets a list of Recordings", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/square/recordings -v -u {name}:{password}", "type": "json" } ], "name": "GetRecordings", "group": "Square_Recordings", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/square/recordings?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/square/recordings?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/square/recordings?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/square/recordings?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/square/recordings?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/squareRecording/index.js", "groupTitle": "Square_Recordings" }, { "type": "get", "url": "/api/square/recordings/{id}", "title": "Gets a single Recording", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/square/recordings/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowRecordings", "group": "Square_Recordings", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/squareRecording/index.js", "groupTitle": "Square_Recordings" }, { "type": "get", "url": "/api/square/recordings/{id}/download", "title": "Download Recording", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/square/recordings/{id}/download -v -u {name}:{password} -X GET", "type": "json" } ], "name": "download", "group": "Square_Recordings", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/squareRecording/index.js", "groupTitle": "Square_Recordings" }, { "type": "put", "url": "/api/square/recordings/{id}", "title": "Update an existing Recording", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/square/recordings/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateRecordings", "group": "Square_Recordings", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/squareRecording/index.js", "groupTitle": "Square_Recordings" }, { "type": "post", "url": "/api/square/reports", "title": "Creates a new Square Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/square/reports -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateSquare_Reports", "group": "Square_Reports", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": true, "field": "network", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "network_script", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "request", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "channel", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "language", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "type", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "uniqueid", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "version", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "callerid", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "calleridname", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "callingpres", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "callingani2", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "callington", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "callingtns", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "dnid", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "rdnis", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "context", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "extension", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "priority", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "enhanced", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "accountcode", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "threadid", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "project_name", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "joinAt", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "leaveAt", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/squareReport/index.js", "groupTitle": "Square_Reports" }, { "type": "delete", "url": "/api/square/reports/{id}", "title": "Deletes a Square Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/square/reports/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteSquare_Reports", "group": "Square_Reports", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/squareReport/index.js", "groupTitle": "Square_Reports" }, { "type": "get", "url": "/api/square/reports/describe", "title": "Gets table info about Square Reports", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/square/reports/describe -v -u {name}:{password}", "type": "json" } ], "name": "DescribeSquare_Reports", "group": "Square_Reports", "description": "

Motion will return a HTTP status code 200 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/squareReport/index.js", "groupTitle": "Square_Reports" }, { "type": "get", "url": "/api/square/reports", "title": "Gets a list of Square Reports", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/square/reports -v -u {name}:{password}", "type": "json" } ], "name": "GetSquare_Reports", "group": "Square_Reports", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/square/reports?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/square/reports?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/square/reports?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/square/reports?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/square/reports?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/squareReport/index.js", "groupTitle": "Square_Reports" }, { "type": "get", "url": "/api/square/reports/{id}", "title": "Gets a single Square Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/square/reports/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowSquare_Reports", "group": "Square_Reports", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/squareReport/index.js", "groupTitle": "Square_Reports" }, { "type": "put", "url": "/api/square/reports/{id}", "title": "Update an existing Square Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/square/reports/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateSquare_Reports", "group": "Square_Reports", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/squareReport/index.js", "groupTitle": "Square_Reports" }, { "type": "post", "url": "/api/integrations/sugarcrm/configurations", "title": "Creates a new SugarCRM Configuration", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/sugarcrm/configurations -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateSugarCRM_Configurations", "group": "SugarCRM_Configurations", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": true, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intSugarcrmConfiguration/index.js", "groupTitle": "SugarCRM_Configurations" }, { "type": "delete", "url": "/api/integrations/sugarcrm/configurations/{id}", "title": "Deletes a SugarCRM Configuration", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/sugarcrm/configurations/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteSugarCRM_Configurations", "group": "SugarCRM_Configurations", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intSugarcrmConfiguration/index.js", "groupTitle": "SugarCRM_Configurations" }, { "type": "get", "url": "/api/integrations/sugarcrm/configurations", "title": "Gets a list of SugarCRM Configurations", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/sugarcrm/configurations -v -u {name}:{password}", "type": "json" } ], "name": "GetSugarCRM_Configurations", "group": "SugarCRM_Configurations", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/integrations/sugarcrm/configurations?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/integrations/sugarcrm/configurations?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/integrations/sugarcrm/configurations?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/integrations/sugarcrm/configurations?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/integrations/sugarcrm/configurations?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/intSugarcrmConfiguration/index.js", "groupTitle": "SugarCRM_Configurations" }, { "type": "get", "url": "/api/integrations/sugarcrm/configurations/{id}", "title": "Gets a single SugarCRM Configuration", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/sugarcrm/configurations/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowSugarCRM_Configurations", "group": "SugarCRM_Configurations", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intSugarcrmConfiguration/index.js", "groupTitle": "SugarCRM_Configurations" }, { "type": "put", "url": "/api/integrations/sugarcrm/configurations/{id}", "title": "Update an existing SugarCRM Configuration", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/sugarcrm/configurations/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateSugarCRM_Configurations", "group": "SugarCRM_Configurations", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intSugarcrmConfiguration/index.js", "groupTitle": "SugarCRM_Configurations" }, { "type": "post", "url": "/api/integrations/sugarcrm/accounts", "title": "Creates a new Sugarcrm Account", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/sugarcrm/accounts -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateSugarcrm_Accounts", "group": "Sugarcrm_Accounts", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": true, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "username", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "password", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "remoteUri", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "serverUrl", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intSugarcrmAccount/index.js", "groupTitle": "Sugarcrm_Accounts" }, { "type": "delete", "url": "/api/integrations/sugarcrm/accounts/{id}", "title": "Deletes a Sugarcrm Account", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/sugarcrm/accounts/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteSugarcrm_Accounts", "group": "Sugarcrm_Accounts", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intSugarcrmAccount/index.js", "groupTitle": "Sugarcrm_Accounts" }, { "type": "get", "url": "/api/integrations/sugarcrm/accounts", "title": "Gets a list of Sugarcrm Accounts", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/sugarcrm/accounts -v -u {name}:{password}", "type": "json" } ], "name": "GetSugarcrm_Accounts", "group": "Sugarcrm_Accounts", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/integrations/sugarcrm/accounts?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/integrations/sugarcrm/accounts?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/integrations/sugarcrm/accounts?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/integrations/sugarcrm/accounts?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/integrations/sugarcrm/accounts?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/intSugarcrmAccount/index.js", "groupTitle": "Sugarcrm_Accounts" }, { "type": "get", "url": "/api/integrations/sugarcrm/accounts/{id}", "title": "Gets a single Sugarcrm Account", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/sugarcrm/accounts/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowSugarcrm_Accounts", "group": "Sugarcrm_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intSugarcrmAccount/index.js", "groupTitle": "Sugarcrm_Accounts" }, { "type": "post", "url": "/api/integrations/sugarcrm/accounts/{id}/configurations", "title": "Creates new configuration", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/sugarcrm/accounts/{id}/configurations -d '{\"name\": \"conf1\"}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addConfiguration", "group": "Sugarcrm_Accounts", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intSugarcrmAccount/index.js", "groupTitle": "Sugarcrm_Accounts" }, { "type": "get", "url": "/api/integrations/sugarcrm/accounts/{id}/configurations", "title": "Gets account configurations", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/sugarcrm/accounts/{id}/configurations -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getConfigurations", "group": "Sugarcrm_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intSugarcrmAccount/index.js", "groupTitle": "Sugarcrm_Accounts" }, { "type": "get", "url": "/api/integrations/sugarcrm/accounts/{id}/fields", "title": "Gets account fields", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/sugarcrm/accounts/{id}/fields -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getFields", "group": "Sugarcrm_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intSugarcrmAccount/index.js", "groupTitle": "Sugarcrm_Accounts" }, { "type": "put", "url": "/api/integrations/sugarcrm/accounts/{id}", "title": "Update an existing Sugarcrm Account", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/sugarcrm/accounts/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateSugarcrm_Accounts", "group": "Sugarcrm_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intSugarcrmAccount/index.js", "groupTitle": "Sugarcrm_Accounts" }, { "type": "get", "url": "/api/integrations/sugarcrm/configurations/{id}/descriptions", "title": "Gets configurations descriptions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/sugarcrm/configurations/{id}/descriptions -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getDescriptions", "group": "Sugarcrm_Configurations", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intSugarcrmConfiguration/index.js", "groupTitle": "Sugarcrm_Configurations" }, { "type": "get", "url": "/api/integrations/sugarcrm/configurations/{id}/fields", "title": "Gets configurations fields", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/sugarcrm/configurations/{id}/fields -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getFields", "group": "Sugarcrm_Configurations", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intSugarcrmConfiguration/index.js", "groupTitle": "Sugarcrm_Configurations" }, { "type": "get", "url": "/api/integrations/sugarcrm/configurations/{id}/subjects", "title": "Gets configurations subjects", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/sugarcrm/configurations/{id}/subjects -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getSubjects", "group": "Sugarcrm_Configurations", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intSugarcrmConfiguration/index.js", "groupTitle": "Sugarcrm_Configurations" }, { "type": "post", "url": "/api/integrations/sugarcrm/fields", "title": "Creates a new Sugarcrm Field", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/sugarcrm/fields -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateSugarcrm_Fields", "group": "Sugarcrm_Fields", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "allowedValues": [ "\"string\"", "\"variable\"", "\"customVariable\"", "\"keyValue\"" ], "optional": true, "field": "type", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "content", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "key", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"string\"", "\"variable\"", "\"customVariable\"" ], "optional": true, "field": "keyType", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "keyContent", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "idField", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "nameField", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "customField", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "variableName", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intSugarcrmField/index.js", "groupTitle": "Sugarcrm_Fields" }, { "type": "delete", "url": "/api/integrations/sugarcrm/fields/{id}", "title": "Deletes a Sugarcrm Field", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/sugarcrm/fields/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteSugarcrm_Fields", "group": "Sugarcrm_Fields", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intSugarcrmField/index.js", "groupTitle": "Sugarcrm_Fields" }, { "type": "get", "url": "/api/integrations/sugarcrm/fields", "title": "Gets a list of Sugarcrm Fields", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/sugarcrm/fields -v -u {name}:{password}", "type": "json" } ], "name": "GetSugarcrm_Fields", "group": "Sugarcrm_Fields", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/integrations/sugarcrm/fields?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/integrations/sugarcrm/fields?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/integrations/sugarcrm/fields?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/integrations/sugarcrm/fields?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/integrations/sugarcrm/fields?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/intSugarcrmField/index.js", "groupTitle": "Sugarcrm_Fields" }, { "type": "get", "url": "/api/integrations/sugarcrm/fields/{id}", "title": "Gets a single Sugarcrm Field", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/sugarcrm/fields/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowSugarcrm_Fields", "group": "Sugarcrm_Fields", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intSugarcrmField/index.js", "groupTitle": "Sugarcrm_Fields" }, { "type": "put", "url": "/api/integrations/sugarcrm/fields/{id}", "title": "Update an existing Sugarcrm Field", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/sugarcrm/fields/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateSugarcrm_Fields", "group": "Sugarcrm_Fields", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intSugarcrmField/index.js", "groupTitle": "Sugarcrm_Fields" }, { "type": "get", "url": "/api/system/process", "title": "Gets system information", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/system -v -u {name}:{password}", "type": "json" } ], "name": "GetSystemInformation", "group": "System_Information", "description": "

Motion returns the system information.

", "version": "0.0.0", "filename": "server/api/system/index.js", "groupTitle": "System_Information" }, { "type": "get", "url": "/api/system", "title": "Gets system information", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/system -v -u {name}:{password}", "type": "json" } ], "name": "GetSystemInformation", "group": "System_Information", "description": "

Motion returns the system information.

", "version": "0.0.0", "filename": "server/api/system/index.js", "groupTitle": "System_Information" }, { "type": "post", "url": "/api/tags", "title": "Creates a new Tag", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/tags -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateTags", "group": "Tags", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "color", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/tag/index.js", "groupTitle": "Tags" }, { "type": "delete", "url": "/api/tags/{id}", "title": "Deletes a Tag", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/tags/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteTags", "group": "Tags", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/tag/index.js", "groupTitle": "Tags" }, { "type": "get", "url": "/api/tags", "title": "Gets a list of Tags", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/tags -v -u {name}:{password}", "type": "json" } ], "name": "GetTags", "group": "Tags", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/tags?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/tags?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/tags?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/tags?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/tags?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/tag/index.js", "groupTitle": "Tags" }, { "type": "get", "url": "/api/tags/{id}", "title": "Gets a single Tag", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/tags/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowTags", "group": "Tags", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/tag/index.js", "groupTitle": "Tags" }, { "type": "put", "url": "/api/tags/{id}", "title": "Update an existing Tag", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/tags/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateTags", "group": "Tags", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/tag/index.js", "groupTitle": "Tags" }, { "type": "post", "url": "/api/teams/{id}/queues", "title": "Add queues to a team", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/teams/{id}/queues -d '{\"ids\": [1,2]}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "AddQueues", "group": "Teams", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/team/index.js", "groupTitle": "Teams" }, { "type": "post", "url": "/api/teams", "title": "Creates a new Team", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/teams -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateTeams", "group": "Teams", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/team/index.js", "groupTitle": "Teams" }, { "type": "delete", "url": "/api/teams/{id}", "title": "Deletes a Team", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/teams/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteTeams", "group": "Teams", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/team/index.js", "groupTitle": "Teams" }, { "type": "get", "url": "/api/teams/{id}/users", "title": "Gets agents from team", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/teams/{id}/users -v -u {name}:{password} -X GET", "type": "json" } ], "name": "GetAgents", "group": "Teams", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/team/index.js", "groupTitle": "Teams" }, { "type": "get", "url": "/api/teams/{id}/queues?channel={channel}", "title": "Gets Queues list", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/teams/{id}/queues?channel={channel} -v -u {name}:{password}", "type": "json" } ], "name": "GetQueues", "group": "Teams", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/team/index.js", "groupTitle": "Teams" }, { "type": "get", "url": "/api/teams", "title": "Gets a list of Teams", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/teams -v -u {name}:{password}", "type": "json" } ], "name": "GetTeams", "group": "Teams", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/teams?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/teams?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/teams?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/teams?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/teams?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/team/index.js", "groupTitle": "Teams" }, { "type": "delete", "url": "/api/teams/{id}/users", "title": "Removes agents from a team", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/teams/{id}/users?ids=1&ids=2 -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "RemoveAgents", "group": "Teams", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/team/index.js", "groupTitle": "Teams" }, { "type": "delete", "url": "/api/teams/{id}/queues", "title": "Remove queues to a team", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/teams/{id}/queues?channel=voice&ids=1&ids=2 -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "RemoveQueues", "group": "Teams", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/team/index.js", "groupTitle": "Teams" }, { "type": "delete", "url": "/api/sms/queues/{id}/teams", "title": "Remove teams from a queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/queues/{id}/teams -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "RemoveTeams", "group": "Teams", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsQueue/index.js", "groupTitle": "Teams" }, { "type": "delete", "url": "/api/fax/queues/{id}/teams", "title": "Remove teams from a queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/queues/{id}/teams -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "RemoveTeams", "group": "Teams", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxQueue/index.js", "groupTitle": "Teams" }, { "type": "delete", "url": "/api/openchannel/queues/{id}/teams", "title": "Remove teams from a queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/queues/{id}/teams -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "RemoveTeams", "group": "Teams", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelQueue/index.js", "groupTitle": "Teams" }, { "type": "delete", "url": "/api/mail/queues/{id}/teams", "title": "Remove teams from a queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/queues/{id}/teams -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "RemoveTeams", "group": "Teams", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailQueue/index.js", "groupTitle": "Teams" }, { "type": "delete", "url": "/api/chat/queues/{id}/teams", "title": "Remove teams from a queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/queues/{id}/teams -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "RemoveTeams", "group": "Teams", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatQueue/index.js", "groupTitle": "Teams" }, { "type": "delete", "url": "/api/voice/queues/{id}/teams", "title": "Remove teams from a queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/queues/{id}/teams -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "RemoveTeams", "group": "Teams", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceQueue/index.js", "groupTitle": "Teams" }, { "type": "get", "url": "/api/teams/{id}", "title": "Gets a single Team", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/teams/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowTeams", "group": "Teams", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/team/index.js", "groupTitle": "Teams" }, { "type": "post", "url": "/api/teams/{id}/users", "title": "Adds agents to a team", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/teams/{id}/users -d '{\"ids\": [1,2]}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addAgents", "group": "Teams", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/team/index.js", "groupTitle": "Teams" }, { "type": "put", "url": "/api/teams/{id}", "title": "Update an existing Team", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/teams/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateTeams", "group": "Teams", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/team/index.js", "groupTitle": "Teams" }, { "type": "post", "url": "/api/templates", "title": "Creates a new Template", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/templates -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateTemplates", "group": "Templates", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": true, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" }, { "group": "Body", "type": "Text", "optional": true, "field": "html", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/template/index.js", "groupTitle": "Templates" }, { "type": "delete", "url": "/api/templates/{id}", "title": "Deletes a Template", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/templates/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteTemplates", "group": "Templates", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/template/index.js", "groupTitle": "Templates" }, { "type": "get", "url": "/api/templates", "title": "Gets a list of Templates", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/templates -v -u {name}:{password}", "type": "json" } ], "name": "GetTemplates", "group": "Templates", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/templates?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/templates?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/templates?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/templates?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/templates?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/template/index.js", "groupTitle": "Templates" }, { "type": "get", "url": "/api/templates/{id}", "title": "Gets a single Template", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/templates/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowTemplates", "group": "Templates", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/template/index.js", "groupTitle": "Templates" }, { "type": "put", "url": "/api/templates/{id}", "title": "Update an existing Template", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/templates/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateTemplates", "group": "Templates", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/template/index.js", "groupTitle": "Templates" }, { "type": "post", "url": "/api/triggers", "title": "Creates a new Trigger", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/triggers -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateTriggers", "group": "Triggers", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": true, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "channel", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "status", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/trigger/index.js", "groupTitle": "Triggers" }, { "type": "delete", "url": "/api/triggers/{id}", "title": "Deletes a Trigger", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/triggers/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteTriggers", "group": "Triggers", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/trigger/index.js", "groupTitle": "Triggers" }, { "type": "get", "url": "/api/triggers", "title": "Gets a list of Triggers", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/triggers -v -u {name}:{password}", "type": "json" } ], "name": "GetTriggers", "group": "Triggers", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/triggers?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/triggers?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/triggers?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/triggers?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/triggers?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/trigger/index.js", "groupTitle": "Triggers" }, { "type": "get", "url": "/api/triggers/{id}", "title": "Gets a single Trigger", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/triggers/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowTriggers", "group": "Triggers", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/trigger/index.js", "groupTitle": "Triggers" }, { "type": "post", "url": "/api/triggers/{id}/actions", "title": "Creates new actions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/triggers/{id}/actions -d '{\"action\": \"contactManager\",\"data1\": \"1\"}' -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addAction", "group": "Triggers", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "Virtual", "optional": true, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "action", "description": "

Allowed values: contactManager, integration, motionbar, jscripty, urlForward, browser

" }, { "group": "Body", "type": "String", "optional": true, "field": "data1", "description": "

contactManager[ListId], integration[intName(zendesk)], motionbar[Popup(0),URL(1),WinApp(2)], urlForward[GET,POST], browser[TemplateId(0),URL(1)]

" }, { "group": "Body", "type": "String", "optional": true, "field": "data2", "description": "

integration[AccountId], motionbar[TemplateId,URL,WinAppPath], urlForward[URL]

" }, { "group": "Body", "type": "String", "optional": true, "field": "data3", "description": "

motionbar[NULL,NULL,WinAppArguments]

" }, { "group": "Body", "type": "String", "optional": true, "field": "data4", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "data5", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "data6", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/trigger/index.js", "groupTitle": "Triggers" }, { "type": "post", "url": "/api/triggers/{id}/all_conditions", "title": "Creates a new \"AND\"condition", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/triggers/{id}/all_conditions -d '{\"field\": \"name\", \"operator\": \"equal\", \"value\": \"John Doe\"}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addAllCondition", "group": "Triggers", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "Virtual", "optional": true, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "field", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "operator", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "value", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/trigger/index.js", "groupTitle": "Triggers" }, { "type": "post", "url": "/api/triggers/{id}/any_conditions", "title": "Creates a new \"OR\"condition", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/triggers/{id}/any_conditions -d '{\"field\": \"name\", \"operator\": \"equal\", \"value\": \"John Doe\"}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addAnyCondition", "group": "Triggers", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "Virtual", "optional": true, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "field", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "operator", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "value", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/trigger/index.js", "groupTitle": "Triggers" }, { "type": "get", "url": "/api/triggers/{id}/actions", "title": "Gets Trigger Actions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/triggers/{id}/actions -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getActions", "group": "Triggers", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/trigger/index.js", "groupTitle": "Triggers" }, { "type": "get", "url": "/api/triggers/{id}/all_conditions", "title": "Gets \"AND\" Trigger Conditions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/triggers/{id}/all_conditions -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getAllConditions", "group": "Triggers", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/trigger/index.js", "groupTitle": "Triggers" }, { "type": "get", "url": "/api/triggers/{id}/any_conditions", "title": "Gets \"OR\" Trigger Conditions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/triggers/{id}/any_conditions -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getAnyConditions", "group": "Triggers", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/trigger/index.js", "groupTitle": "Triggers" }, { "type": "put", "url": "/api/triggers/{id}", "title": "Update an existing Trigger", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/triggers/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateTriggers", "group": "Triggers", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/trigger/index.js", "groupTitle": "Triggers" }, { "type": "post", "url": "/api/trunks", "title": "Create a new trunk", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/trunks -v -u {name}:{password} -X POST", "type": "json" } ], "name": "Create", "group": "Trunks", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "name", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"friend\"", "\"user\"", "\"peer\"" ], "optional": false, "field": "type", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "context", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"ALLOWED_NOT_SCREENED\"", "\"ALLOWED_PASSED_SCREEN\"", "\"ALLOWED_FAILED_SCREEN\"", "\"ALLOWED\"", "\"PROHIB_NOT_SCREENED\"", "\"PROHIB_PASSED_SCREEN\"", "\"PROHIB_FAILED_SCREEN\"", "\"PROHIB\"" ], "optional": true, "field": "callingpres", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "deny", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "permit", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "secret", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "md5secret", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "remotesecret", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "transport", "description": "

String is deprecated. Please use an Array as ["udp", "tcp"]

" }, { "group": "Body", "type": "String", "allowedValues": [ "\"rfc2833\"", "\"info\"", "\"shortinfo\"", "\"inband\"", "\"auto\"" ], "optional": true, "field": "dtmfmode", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"", "\"nonat\"", "\"update\"", "\"outgoing\"" ], "optional": true, "field": "directmedia", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "directrtpsetup", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "directmediapermit", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "directmediadeny", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "nat", "description": "

String is deprecated. Please use an Array as ["force_rport", "comedia"]

" }, { "group": "Body", "type": "String", "optional": true, "field": "callgroup", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "namedcallgroup", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "pickupgroup", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "namedpickupgroup", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "language", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "tonezone", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "disallow", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "allow", "description": "

String is deprecated. Please use an Array as ["ulaw", "alaw", "alaw"]

" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "autoframing", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "insecure", "description": "

String is deprecated. Please use an Array as ["port", "invite"]

" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "trustrpid", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "trust_id_outbound", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"", "\"never\"" ], "optional": true, "field": "progressinband", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "promiscredir", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "useclientcode", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "accountcode", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "setvar", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "callerid", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "amaflags", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "callcounter", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "busylevel", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "allowoverlap", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "allowsubscribe", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "allowtransfer", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "ignoresdpversion", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "subscribecontext", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "template", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"", "\"always\"" ], "optional": true, "field": "videosupport", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "maxcallbitrate", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "rfc2833compensate", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "mailbox", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"accept\"", "\"refuse\"", "\"originate\"" ], "optional": true, "field": "session_timers", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "session_expires", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "session_minse", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"uac\"", "\"uas\"" ], "optional": true, "field": "session_refresher", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "t38pt_usertpsource", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "regexten", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "fromdomain", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "fromuser", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "port", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "qualify", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "keepalive", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "defaultip", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "defaultuser", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "rtptimeout", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "rtpholdtimeout", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "rtpkeepalive", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"", "\"pai\"" ], "optional": true, "field": "sendrpid", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "outboundproxy", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "callbackextension", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "timert1", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "timerb", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "qualifyfreq", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "contactpermit", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "contactdeny", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "contactacl", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "unsolicited_mailbox", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "use_q850_reason", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "maxforwards", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "encryption", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "avpf", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "force_avp", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "icesupport", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "dtlsenable", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"", "\"fingerprint\"", "\"certificate\"" ], "optional": true, "field": "dtlsverify", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "dtlsrekey", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "dtlscertfile", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "dtlsprivatekey", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "dtlscipher", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "dtlscafile", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "dtlscapath", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"active\"", "\"passive\"", "\"actpass\"" ], "optional": true, "field": "dtlssetup", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "dtlsfingerprint", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "usereqphone", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "recordonfeature", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "recordofffeature", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "call_limit", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "registertrying", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "subscribemwi", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "vmexten", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "mohinterpret", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "mohsuggest", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "parkinglot", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "host", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"", "\"nonat\"", "\"update\"", "\"update,nonat\"" ], "optional": true, "field": "canreinvite", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "registry", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "otherFields", "description": "" }, { "group": "Body", "type": "Boolean", "optional": false, "field": "active", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "t38pt_udptl", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/trunk/index.js", "groupTitle": "Trunks" }, { "type": "delete", "url": "/api/trunks/{id}", "title": "Deletes a trunk", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/trunks/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "Delete", "group": "Trunks", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/trunk/index.js", "groupTitle": "Trunks" }, { "type": "get", "url": "/api/trunks", "title": "Gets a list of Trunks", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/trunks -v -u {name}:{password}", "type": "json" } ], "name": "GetTrunks", "group": "Trunks", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/trunks?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/trunks?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/trunks?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/trunks?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/trunks?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/trunk/index.js", "groupTitle": "Trunks" }, { "type": "get", "url": "/api/trunks/{id}", "title": "Gets a single Trunk", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/trunks/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowTrunks", "group": "Trunks", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/trunk/index.js", "groupTitle": "Trunks" }, { "type": "put", "url": "/api/trunks/{id}", "title": "Update an existing trunk", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/trunks/{id} -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "Update", "group": "Trunks", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/trunk/index.js", "groupTitle": "Trunks" }, { "type": "post", "url": "/api/users/{id}/contacts", "title": "Add contacts to a user", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/users/{id}/contacts -d '{\"ids\": [1,2]}' -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "AddContacts", "group": "Users", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/user/index.js", "groupTitle": "Users" }, { "type": "post", "url": "/api/users/{id}/queues", "title": "Add queues to an agent", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/users/{id}/queues -d '{\"ids\": [1,2], \"penalty\": 2}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "AddQueues", "group": "Users", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/user/index.js", "groupTitle": "Users" }, { "type": "post", "url": "/api/users/{id}/teams", "title": "Add teams to an agent", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/users/{id}/teams -d '{\"ids\": [1,2]}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "AddTeams", "group": "Users", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/user/index.js", "groupTitle": "Users" }, { "type": "post", "url": "/api/users/create_many", "title": "Creates many Users", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/users/create_many -d '[{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}]' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "BulkCreateUsers", "group": "Users", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "name", "description": "

The name of the user

" }, { "group": "Body", "type": "String", "optional": false, "field": "fullname", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "email", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"admin\"", "\"user\"", "\"agent\"", "\"telephone\"" ], "optional": false, "field": "role", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "password", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "provider", "description": "" }, { "group": "Body", "type": "Integer", "optional": false, "field": "internal", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "salt", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "phone", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "mobile", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "address", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "zipcode", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "userpic", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "city", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "country", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "online", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "lastLoginAt", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "voicePause", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "chatPause", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "mailPause", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "faxPause", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "smsPause", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "openchannelPause", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "pauseType", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "lastPauseAt", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "chatCapacity", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "mailCapacity", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "faxCapacity", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "smsCapacity", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "openchannelCapacity", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "phoneBarAutoAnswer", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "phoneBarEnableSettings", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "phoneBarListenPort", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "phoneBarExpires", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "phoneBarRemoteControl", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "phoneBarRemoteControlPort", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "phoneBarEnableRecording", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "phoneBarRingInUse", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "chanspy", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "host", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "ipaddr", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "port", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "regseconds", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "fullcontact", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "regserver", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "useragent", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "lastms", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"friend\"", "\"user\"", "\"peer\"" ], "optional": true, "field": "type", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "context", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"ALLOWED_NOT_SCREENED\"", "\"ALLOWED_PASSED_SCREEN\"", "\"ALLOWED_FAILED_SCREEN\"", "\"ALLOWED\"", "\"PROHIB_NOT_SCREENED\"", "\"PROHIB_PASSED_SCREEN\"", "\"PROHIB_FAILED_SCREEN\"", "\"PROHIB\"" ], "optional": true, "field": "callingpres", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "deny", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "permit", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "secret", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "md5secret", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "remotesecret", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "transport", "description": "

String is deprecated. Please use an Array as ["udp", "tcp"]

" }, { "group": "Body", "type": "String", "allowedValues": [ "\"rfc2833\"", "\"info\"", "\"shortinfo\"", "\"inband\"", "\"auto\"" ], "optional": true, "field": "dtmfmode", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"", "\"nonat\"", "\"update\"", "\"outgoing\"" ], "optional": true, "field": "directmedia", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "directrtpsetup", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "directmediapermit", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "directmediadeny", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "nat", "description": "

String is deprecated. Please use an Array as ["force_rport", "comedia"]

" }, { "group": "Body", "type": "String", "optional": true, "field": "callgroup", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "namedcallgroup", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "pickupgroup", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "namedpickupgroup", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "language", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "tonezone", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "disallow", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "allow", "description": "

String is deprecated. Please use an Array as ["ulaw", "alaw", "gsm"]

" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "autoframing", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "insecure", "description": "

String is deprecated. Please use an Array as ["port", "invite"]

" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "trustrpid", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "trust_id_outbound", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"", "\"never\"" ], "optional": true, "field": "progressinband", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "promiscredir", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "useclientcode", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "accountcode", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "setvar", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "callerid", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "amaflags", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "callcounter", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "busylevel", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "allowoverlap", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "allowsubscribe", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "allowtransfer", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "ignoresdpversion", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "subscribecontext", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "template", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"", "\"always\"" ], "optional": true, "field": "videosupport", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "maxcallbitrate", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "rfc2833compensate", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "mailbox", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"accept\"", "\"refuse\"", "\"originate\"" ], "optional": true, "field": "session_timers", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "session_expires", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "session_minse", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"uac\"", "\"uas\"" ], "optional": true, "field": "session_refresher", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "t38pt_usertpsource", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "regexten", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "fromdomain", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "fromuser", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "qualify", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "keepalive", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "defaultip", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "defaultuser", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "rtptimeout", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "rtpholdtimeout", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "rtpkeepalive", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "sendrpid", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "outboundproxy", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "callbackextension", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "timert1", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "timerb", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "qualifyfreq", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "contactpermit", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "contactdeny", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "contactacl", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "unsolicited_mailbox", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "use_q850_reason", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "maxforwards", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "encryption", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "avpf", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "force_avp", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "icesupport", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "dtlsenable", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"", "\"fingerprint\"", "\"certificate\"" ], "optional": true, "field": "dtlsverify", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "dtlsrekey", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "dtlscertfile", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "dtlsprivatekey", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "dtlscipher", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "dtlscafile", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "dtlscapath", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"active\"", "\"passive\"", "\"actpass\"" ], "optional": true, "field": "dtlssetup", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "dtlsfingerprint", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "usereqphone", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "recordonfeature", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "recordofffeature", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "call_limit", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "registertrying", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "subscribemwi", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "vmexten", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "mohinterpret", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "mohsuggest", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "parkinglot", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"", "\"nonat\"", "\"update\"", "\"update,nonat\"" ], "optional": true, "field": "canreinvite", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "loginInPause", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "resetPasswordToken", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "resetPasswordExpires", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "showWebBar", "description": "" }, { "group": "Body", "type": "Text", "optional": true, "field": "permissions", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "phoneBarUnconditionalNumber", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "phoneBarNoReplyNumber", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "phoneBarBusyNumber", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "phoneBarUnconditional", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "phoneBarNoReply", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "phoneBarBusy", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "phoneBarDnd", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "phoneBarUnansweredCallBadge", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "phoneBarEnableDtmfTone", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "phoneBarAutoAnswerDelay", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "extensionMonitor", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "crudPermissions", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "rtcp_mux", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "allowmessenger", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "phoneBarOutboundProxy", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "passwordResetAt", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/user/index.js", "groupTitle": "Users" }, { "type": "put", "url": "/api/users/{id}/password", "title": "Change user password", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/users/{id}/password -d '{\"oldPassword\": \"1234\", \"newPassword\": \"5678\"}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "ChangePwd", "group": "Users", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/user/index.js", "groupTitle": "Users" }, { "type": "post", "url": "/api/users", "title": "Create a new user", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/users -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "Create", "group": "Users", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/user/index.js", "groupTitle": "Users" }, { "type": "delete", "url": "/api/users/{id}", "title": "Deletes a user", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/users/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "Delete", "group": "Users", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/user/index.js", "groupTitle": "Users" }, { "type": "get", "url": "/api/users/describe", "title": "Gets table info about Users", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/users/describe -v -u {name}:{password}", "type": "json" } ], "name": "DescribeUsers", "group": "Users", "description": "

Motion will return a HTTP status code 200 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/user/index.js", "groupTitle": "Users" }, { "type": "get", "url": "/api/users/{id}/agents", "title": "GetAgents", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/users/{id}/agents -v -u {name}:{password}", "type": "json" } ], "name": "GetAgents", "group": "Users", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/user/index.js", "groupTitle": "Users" }, { "type": "get", "url": "/api/users/{id}/groups", "title": "GetChatGroups", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/users/{id}/groups -v -u {name}:{password}", "type": "json" } ], "name": "GetChatGroups", "group": "Users", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/user/index.js", "groupTitle": "Users" }, { "type": "get", "url": "/api/users/{id}/chat/interactions", "title": "GetChatInteractions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/users/{id}/chat/interactions -v -u {name}:{password}", "type": "json" } ], "name": "GetChatInteractions", "group": "Users", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/user/index.js", "groupTitle": "Users" }, { "type": "get", "url": "/api/users/{id}/contacts", "title": "GetContacts", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/users/{id}/contacts -v -u {name}:{password}", "type": "json" } ], "name": "GetContacts", "group": "Users", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/user/index.js", "groupTitle": "Users" }, { "type": "get", "url": "/api/users/{id}/fax/interactions", "title": "GetFaxInteractions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/users/{id}/fax/interactions -v -u {name}:{password}", "type": "json" } ], "name": "GetFaxInteractions", "group": "Users", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/user/index.js", "groupTitle": "Users" }, { "type": "get", "url": "/api/users/{id}/lists", "title": "GetLists", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/users/{id}/lists -v -u {name}:{password}", "type": "json" } ], "name": "GetLists", "group": "Users", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/user/index.js", "groupTitle": "Users" }, { "type": "get", "url": "/api/users/{id}/mail/interactions", "title": "GetMailInteractions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/users/{id}/mail/interactions -v -u {name}:{password}", "type": "json" } ], "name": "GetMailInteractions", "group": "Users", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/user/index.js", "groupTitle": "Users" }, { "type": "get", "url": "/api/users/{id}/openchannel/interactions", "title": "GetOpenchannelInteractions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/users/{id}/openchannel/interactions -v -u {name}:{password}", "type": "json" } ], "name": "GetOpenchannelInteractions", "group": "Users", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/user/index.js", "groupTitle": "Users" }, { "type": "get", "url": "/api/users/{id}/queues?channel={channel}", "title": "Gets Queues list", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/users/{id}/queues/?channel={channel} -v -u {name}:{password}", "type": "json" } ], "name": "GetQueues", "group": "Users", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/user/index.js", "groupTitle": "Users" }, { "type": "get", "url": "/api/users/{id}/recordings", "title": "GetRecordings", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/users/{id}/recordings -v -u {name}:{password}", "type": "json" } ], "name": "GetRecordings", "group": "Users", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/user/index.js", "groupTitle": "Users" }, { "type": "get", "url": "/api/users/{id}/sms/interactions", "title": "GetSmsInteractions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/users/{id}/sms/interactions -v -u {name}:{password}", "type": "json" } ], "name": "GetSmsInteractions", "group": "Users", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/user/index.js", "groupTitle": "Users" }, { "type": "get", "url": "/api/users/{id}/teams", "title": "GetTeams", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/users/{id}/teams -v -u {name}:{password}", "type": "json" } ], "name": "GetTeams", "group": "Users", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/user/index.js", "groupTitle": "Users" }, { "type": "get", "url": "/api/users", "title": "Gets a list of Users", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/users -v -u {name}:{password}", "type": "json" } ], "name": "GetUsers", "group": "Users", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/users?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/users?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/users?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/users?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/users?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/user/index.js", "groupTitle": "Users" }, { "type": "get", "url": "/api/users/{id}/queues_rt", "title": "GetVoiceQueuesRt", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/users/{id}/queues_rt -v -u {name}:{password}", "type": "json" } ], "name": "GetVoiceQueuesRt", "group": "Users", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/user/index.js", "groupTitle": "Users" }, { "type": "post", "url": "/api/users/{id}/login", "title": "Login", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/users/{id}/login -v -u {name}:{password}", "type": "json" } ], "name": "Login", "group": "Users", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/user/index.js", "groupTitle": "Users" }, { "type": "post", "url": "/api/users/{id}/logout", "title": "Logout", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/users/{id}/logout -v -u {name}:{password}", "type": "json" } ], "name": "Logout", "group": "Users", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/user/index.js", "groupTitle": "Users" }, { "type": "post", "url": "/api/users/{id}/pause", "title": "Pause", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/users/{id}/pause -v -u {name}:{password}", "type": "json" } ], "name": "Pause", "group": "Users", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/user/index.js", "groupTitle": "Users" }, { "type": "delete", "url": "/api/users/{id}/queues", "title": "Remove queues to an agent", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/users/{id}/queues?ids=1&ids=2 -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "RemoveQueues", "group": "Users", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/user/index.js", "groupTitle": "Users" }, { "type": "delete", "url": "/api/users/{id}/teams", "title": "Removes teams from an agent", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/users/{id}/teams?ids=1&ids=2 -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "RemoveTeams", "group": "Users", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/user/index.js", "groupTitle": "Users" }, { "type": "get", "url": "/api/users/{id}", "title": "Gets a single User", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/users/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowUsers", "group": "Users", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/user/index.js", "groupTitle": "Users" }, { "type": "post", "url": "/api/users/{id}/unpause", "title": "Unpause", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/users/{id}/unpause -v -u {name}:{password}", "type": "json" } ], "name": "Unpause", "group": "Users", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/user/index.js", "groupTitle": "Users" }, { "type": "post", "url": "/api/users/{id}/avatar", "title": "Add avatar", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/users/{id}/avatar -H 'Content-Type: multipart/form-data' -F 'file=@{filename}' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addAvatar", "group": "Users", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/user/index.js", "groupTitle": "Users" }, { "type": "get", "url": "/api/users/{id}/avatar", "title": "Get avatar", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/users/{id}/avatar -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getAvatar", "group": "Users", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/user/index.js", "groupTitle": "Users" }, { "type": "put", "url": "/api/users/{id}", "title": "Update an existing User", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/users/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateUsers", "group": "Users", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/user/index.js", "groupTitle": "Users" }, { "type": "post", "url": "/api/variables", "title": "Creates a new Variable", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/variables -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateVariables", "group": "Variables", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/variable/index.js", "groupTitle": "Variables" }, { "type": "delete", "url": "/api/variables/{id}", "title": "Deletes a Variable", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/variables/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteVariables", "group": "Variables", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/variable/index.js", "groupTitle": "Variables" }, { "type": "get", "url": "/api/variables", "title": "Gets a list of Variables", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/variables -v -u {name}:{password}", "type": "json" } ], "name": "GetVariables", "group": "Variables", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/variables?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/variables?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/variables?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/variables?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/variables?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/variable/index.js", "groupTitle": "Variables" }, { "type": "get", "url": "/api/variables/{id}", "title": "Gets a single Variable", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/variables/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowVariables", "group": "Variables", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/variable/index.js", "groupTitle": "Variables" }, { "type": "put", "url": "/api/variables/{id}", "title": "Update an existing Variable", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/variables/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateVariables", "group": "Variables", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/variable/index.js", "groupTitle": "Variables" }, { "type": "get", "url": "/api/version/fetch", "title": "Fetch git version", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/version/fetch -v -u {name}:{password}", "type": "json" } ], "name": "FetchVersion", "group": "Version", "description": "

Motion run the following command: git fetch origin master

", "version": "0.0.0", "filename": "server/api/version/index.js", "groupTitle": "Version" }, { "type": "get", "url": "/api/version", "title": "Gets version", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/version -v -u {name}:{password}", "type": "json" } ], "name": "GetVersion", "group": "Version", "description": "

Motion returns the current and latest motion version.

", "version": "0.0.0", "filename": "server/api/version/index.js", "groupTitle": "Version" }, { "type": "get", "url": "/api/version/migrations", "title": "Launch database migrations", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/version/migrations -v -u {name}:{password}", "type": "json" } ], "name": "MigrateVersion", "group": "Version", "description": "

Motion launch the database migrations, according to the application version

", "version": "0.0.0", "filename": "server/api/version/index.js", "groupTitle": "Version" }, { "type": "get", "url": "/api/version/pull", "title": "Pull git version", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/version/pull -v -u {name}:{password}", "type": "json" } ], "name": "PullVersion", "group": "Version", "description": "

Motion run the following command: git pull

", "version": "0.0.0", "filename": "server/api/version/index.js", "groupTitle": "Version" }, { "type": "get", "url": "/api/version/reset", "title": "Reset git version", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/version/reset -v -u {name}:{password}", "type": "json" } ], "name": "ResetVersion", "group": "Version", "description": "

Motion run the following command: git reset --hard FETCH_HEAD

", "version": "0.0.0", "filename": "server/api/version/index.js", "groupTitle": "Version" }, { "type": "get", "url": "/api/version/restart", "title": "Restart motion2 after update", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/version/restart -v -u {name}:{password}", "type": "json" } ], "name": "RestartVersion", "group": "Version", "description": "

Motion run the following command: pm2 restart motion

", "version": "0.0.0", "filename": "server/api/version/index.js", "groupTitle": "Version" }, { "type": "get", "url": "/api/voice/agents/reports/describe", "title": "Gets table info about Agent Reports", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/agents/reports/describe -v -u {name}:{password}", "type": "json" } ], "name": "DescribeAgent_Reports", "group": "Voice_Agent_Reports", "description": "

Motion will return a HTTP status code 200 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceAgentReport/index.js", "groupTitle": "Voice_Agent_Reports" }, { "type": "get", "url": "/api/voice/agents/reports", "title": "Gets a list of Agent Reports", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/agents/reports -v -u {name}:{password}", "type": "json" } ], "name": "GetAgent_Reports", "group": "Voice_Agent_Reports", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/voice/agents/reports?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/voice/agents/reports?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/voice/agents/reports?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/voice/agents/reports?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/voice/agents/reports?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/voiceAgentReport/index.js", "groupTitle": "Voice_Agent_Reports" }, { "type": "get", "url": "/api/voice/agents/reports/{id}", "title": "Gets a single Agent Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/agents/reports/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowAgent_Reports", "group": "Voice_Agent_Reports", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceAgentReport/index.js", "groupTitle": "Voice_Agent_Reports" }, { "type": "get", "url": "/api/voice/calls/reports/describe", "title": "Gets table info about Call Reports", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/calls/reports/describe -v -u {name}:{password}", "type": "json" } ], "name": "DescribeCall_Reports", "group": "Voice_Call_Reports", "description": "

Motion will return a HTTP status code 200 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceCallReport/index.js", "groupTitle": "Voice_Call_Reports" }, { "type": "get", "url": "/api/voice/calls/reports", "title": "Gets a list of Call Reports", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/calls/reports -v -u {name}:{password}", "type": "json" } ], "name": "GetCall_Reports", "group": "Voice_Call_Reports", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/voice/calls/reports?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/voice/calls/reports?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/voice/calls/reports?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/voice/calls/reports?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/voice/calls/reports?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/voiceCallReport/index.js", "groupTitle": "Voice_Call_Reports" }, { "type": "get", "url": "/api/voice/calls/reports/{id}", "title": "Gets a single Call Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/calls/reports/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowCall_Reports", "group": "Voice_Call_Reports", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceCallReport/index.js", "groupTitle": "Voice_Call_Reports" }, { "type": "put", "url": "/api/voice/calls/reports/{id}", "title": "Update a single cdr", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/calls/reports/{id} -d '{\"userDispositio\": \"OK\"}' -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "update", "group": "Voice_Call_Reports", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceCallReport/index.js", "groupTitle": "Voice_Call_Reports" }, { "type": "post", "url": "/api/voice/chanspy", "title": "Creates a new ChanSpy", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/chanspy -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateChanSpy", "group": "Voice_ChanSpy", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": true, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "prefix", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "options", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "auth", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "password", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "record", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "recordingFormat", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceChanSpy/index.js", "groupTitle": "Voice_ChanSpy" }, { "type": "delete", "url": "/api/voice/chanspy/{id}", "title": "Deletes a ChanSpy", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/chanspy/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteChanSpy", "group": "Voice_ChanSpy", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceChanSpy/index.js", "groupTitle": "Voice_ChanSpy" }, { "type": "get", "url": "/api/voice/chanspy", "title": "Gets a list of ChanSpy", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/chanspy -v -u {name}:{password}", "type": "json" } ], "name": "GetChanSpy", "group": "Voice_ChanSpy", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/voice/chanspy?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/voice/chanspy?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/voice/chanspy?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/voice/chanspy?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/voice/chanspy?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/voiceChanSpy/index.js", "groupTitle": "Voice_ChanSpy" }, { "type": "get", "url": "/api/voice/chanspy/{id}", "title": "Gets a single ChanSpy", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/chanspy/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowChanSpy", "group": "Voice_ChanSpy", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceChanSpy/index.js", "groupTitle": "Voice_ChanSpy" }, { "type": "put", "url": "/api/voice/chanspy/{id}", "title": "Update an existing ChanSpy", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/chanspy/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateChanSpy", "group": "Voice_ChanSpy", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceChanSpy/index.js", "groupTitle": "Voice_ChanSpy" }, { "type": "post", "url": "/api/voice/contexts", "title": "Create a new context", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/contexts -v -u {name}:{password} -X POST", "type": "json" } ], "name": "Create", "group": "Voice_Contexts", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": true, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "defaultEntry", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceContext/index.js", "groupTitle": "Voice_Contexts" }, { "type": "delete", "url": "/api/voice/contexts/{id}", "title": "Deletes a context", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/contexts/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "Delete", "group": "Voice_Contexts", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceContext/index.js", "groupTitle": "Voice_Contexts" }, { "type": "get", "url": "/api/voice/contexts", "title": "Gets a list of Contexts", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/contexts -v -u {name}:{password}", "type": "json" } ], "name": "GetContexts", "group": "Voice_Contexts", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/voice/contexts?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/voice/contexts?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/voice/contexts?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/voice/contexts?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/voice/contexts?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/voiceContext/index.js", "groupTitle": "Voice_Contexts" }, { "type": "get", "url": "/api/voice/contexts/{id}", "title": "Gets a single Context", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/contexts/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowContexts", "group": "Voice_Contexts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceContext/index.js", "groupTitle": "Voice_Contexts" }, { "type": "put", "url": "/api/voice/contexts/{id}", "title": "Update an existing context", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/contexts/{id} -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "Update", "group": "Voice_Contexts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceContext/index.js", "groupTitle": "Voice_Contexts" }, { "type": "get", "url": "/api/voice/dials/reports/describe", "title": "Gets table info about Dial Reports", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/dials/reports/describe -v -u {name}:{password}", "type": "json" } ], "name": "DescribeDial_Reports", "group": "Voice_Dial_Reports", "description": "

Motion will return a HTTP status code 200 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceDialReport/index.js", "groupTitle": "Voice_Dial_Reports" }, { "type": "get", "url": "/api/voice/dials/reports", "title": "Gets a list of Dial Reports", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/dials/reports -v -u {name}:{password}", "type": "json" } ], "name": "GetDial_Reports", "group": "Voice_Dial_Reports", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/voice/dials/reports?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/voice/dials/reports?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/voice/dials/reports?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/voice/dials/reports?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/voice/dials/reports?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/voiceDialReport/index.js", "groupTitle": "Voice_Dial_Reports" }, { "type": "get", "url": "/api/voice/dials/reports/{id}", "title": "Gets a single Dial Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/dials/reports/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowDial_Reports", "group": "Voice_Dial_Reports", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceDialReport/index.js", "groupTitle": "Voice_Dial_Reports" }, { "type": "post", "url": "/api/voice/dispositions", "title": "Creates a new Disposition", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/dispositions -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateDispositions", "group": "Voice_Dispositions", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "name", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceDisposition/index.js", "groupTitle": "Voice_Dispositions" }, { "type": "delete", "url": "/api/voice/dispositions/{id}", "title": "Deletes a Disposition", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/dispositions/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteDispositions", "group": "Voice_Dispositions", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceDisposition/index.js", "groupTitle": "Voice_Dispositions" }, { "type": "get", "url": "/api/voice/dispositions", "title": "Gets a list of Dispositions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/dispositions -v -u {name}:{password}", "type": "json" } ], "name": "GetDispositions", "group": "Voice_Dispositions", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/voice/dispositions?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/voice/dispositions?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/voice/dispositions?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/voice/dispositions?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/voice/dispositions?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/voiceDisposition/index.js", "groupTitle": "Voice_Dispositions" }, { "type": "get", "url": "/api/voice/dispositions/{id}", "title": "Gets a single Disposition", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/dispositions/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowDispositions", "group": "Voice_Dispositions", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceDisposition/index.js", "groupTitle": "Voice_Dispositions" }, { "type": "put", "url": "/api/voice/dispositions/{id}", "title": "Update an existing Disposition", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/dispositions/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateDispositions", "group": "Voice_Dispositions", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceDisposition/index.js", "groupTitle": "Voice_Dispositions" }, { "type": "delete", "url": "/api/voice/extensions/{id}", "title": "Deletes a Extension", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/extensions/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteExtensions", "group": "Voice_Extensions", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceExtension/index.js", "groupTitle": "Voice_Extensions" }, { "type": "get", "url": "/api/voice/extensions", "title": "Gets a list of Extensions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/extensions -v -u {name}:{password}", "type": "json" } ], "name": "GetExtensions", "group": "Voice_Extensions", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/voice/extensions?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/voice/extensions?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/voice/extensions?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/voice/extensions?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/voice/extensions?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/voiceExtension/index.js", "groupTitle": "Voice_Extensions" }, { "type": "get", "url": "/api/voice/extensions/{id}", "title": "Gets a single Extension", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/extensions/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowExtensions", "group": "Voice_Extensions", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceExtension/index.js", "groupTitle": "Voice_Extensions" }, { "type": "post", "url": "/api/voice/extensions", "title": "Create new applications", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/extensions/{id}/applications -d '[{\"app\": \"Set\", \"appdata\": \"CALLERDNID=${CALLER(dnid)}\"}]' -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addApplications", "group": "Voice_Extensions", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceExtension/index.js", "groupTitle": "Voice_Extensions" }, { "type": "post", "url": "/api/voice/extensions", "title": "Create an extension", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/extensions -d '{\"exten\": \"12345\", \"context\": \"from-custom\"}' -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "create", "group": "Voice_Extensions", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceExtension/index.js", "groupTitle": "Voice_Extensions" }, { "type": "put", "url": "/api/voice/extensions/{id}", "title": "Update an extension", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/extensions/{id} -d '{\"exten\": \"12345\", \"context\": \"from-custom\"}' -H 'Content-Type: application/json' -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "update", "group": "Voice_Extensions", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceExtension/index.js", "groupTitle": "Voice_Extensions" }, { "type": "post", "url": "/api/voice/mohs", "title": "Create a new a new MOH", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/mohs -d '{\"name\": \"xmas_musics\"}' -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "AddMoh", "group": "Voice_MOHs", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceMusicOnHold/index.js", "groupTitle": "Voice_MOHs" }, { "type": "post", "url": "/api/voice/mohs/{id}/sounds", "title": "Add sound to MOH", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/mohs/{id}/sounds -d '{\"id\": 1}' -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "AddSound", "group": "Voice_MOHs", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceMusicOnHold/index.js", "groupTitle": "Voice_MOHs" }, { "type": "delete", "url": "/api/voice/mohs/{id}", "title": "Deletes an MOH", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/mohs/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DestroyMoh", "group": "Voice_MOHs", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceMusicOnHold/index.js", "groupTitle": "Voice_MOHs" }, { "type": "get", "url": "/api/voice/mohs", "title": "Gets a list of Music On Holds", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/mohs -v -u {name}:{password}", "type": "json" } ], "name": "GetMusic_On_Holds", "group": "Voice_MOHs", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/voice/mohs?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/voice/mohs?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/voice/mohs?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/voice/mohs?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/voice/mohs?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/voiceMusicOnHold/index.js", "groupTitle": "Voice_MOHs" }, { "type": "get", "url": "/api/voice/mohs/{id}/sounds", "title": "Gets sounds from MOH", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/mohs/{id}/sounds -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "GetSounds", "group": "Voice_MOHs", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceMusicOnHold/index.js", "groupTitle": "Voice_MOHs" }, { "type": "delete", "url": "/api/voice/mohs/{id}/sounds/{id2}", "title": "Remove sound from MOH", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/mohs/{id}/sounds/{id2} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "RemoveSound", "group": "Voice_MOHs", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceMusicOnHold/index.js", "groupTitle": "Voice_MOHs" }, { "type": "get", "url": "/api/voice/mohs/{id}", "title": "Gets a single Music On Hold", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/mohs/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowMusic_On_Holds", "group": "Voice_MOHs", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceMusicOnHold/index.js", "groupTitle": "Voice_MOHs" }, { "type": "put", "url": "/api/voice/mohs/{id}", "title": "Update an existing Music On Hold", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/mohs/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateMusic_On_Holds", "group": "Voice_MOHs", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceMusicOnHold/index.js", "groupTitle": "Voice_MOHs" }, { "type": "post", "url": "/api/voice/mails", "title": "Creates a new Mail", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/mails -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateMails", "group": "Voice_Mails", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": true, "field": "customer_id", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "context", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "mailbox", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "password", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "fullname", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "email", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "pager", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "tz", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": false, "field": "attach", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": false, "field": "saycid", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "dialout", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "callback", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": false, "field": "review", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": false, "field": "operator", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": false, "field": "envelope", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": false, "field": "sayduration", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "saydurationm", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": false, "field": "sendvoicemail", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": false, "field": "delete", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": false, "field": "nextaftercmd", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": false, "field": "forcename", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": false, "field": "forcegreetings", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": false, "field": "hidefromdir", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "stamp", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "emailsubject", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "emailbody", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "name", "description": "" }, { "group": "Body", "type": "Integer", "optional": false, "field": "maxsecs", "description": "" }, { "group": "Body", "type": "Integer", "optional": false, "field": "maxmsg", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceMail/index.js", "groupTitle": "Voice_Mails" }, { "type": "delete", "url": "/api/voice/mails/{id}", "title": "Deletes a Mail", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/mails/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteMails", "group": "Voice_Mails", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceMail/index.js", "groupTitle": "Voice_Mails" }, { "type": "get", "url": "/api/voice/mails", "title": "Gets a list of Mails", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/mails -v -u {name}:{password}", "type": "json" } ], "name": "GetMails", "group": "Voice_Mails", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/voice/mails?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/voice/mails?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/voice/mails?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/voice/mails?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/voice/mails?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/voiceMail/index.js", "groupTitle": "Voice_Mails" }, { "type": "get", "url": "/api/voice/mails/{id}", "title": "Gets a single Mail", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/mails/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowMails", "group": "Voice_Mails", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceMail/index.js", "groupTitle": "Voice_Mails" }, { "type": "get", "url": "/api/voice/mails/{id}/messages", "title": "Gets voice mail messages", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/mails/{id}/messages -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getMessages", "group": "Voice_Mails", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceMail/index.js", "groupTitle": "Voice_Mails" }, { "type": "put", "url": "/api/voice/mails/{id}", "title": "Update an existing Mail", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/mails/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateMails", "group": "Voice_Mails", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceMail/index.js", "groupTitle": "Voice_Mails" }, { "type": "post", "url": "/api/voice/mails/messages", "title": "Creates a new Message", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/mails/messages -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateMessages", "group": "Voice_Messages", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "Virtual", "optional": true, "field": "name", "description": "" }, { "group": "Body", "type": "Integer", "optional": false, "field": "msgnum", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "dir", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "context", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "macrocontext", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "callerid", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "origtime", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "duration", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "mailboxuser", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "mailboxcontext", "description": "" }, { "group": "Body", "type": "Blob", "optional": true, "field": "recording", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "flag", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "msg_id", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "stamp", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceMailMessage/index.js", "groupTitle": "Voice_Messages" }, { "type": "delete", "url": "/api/voice/mails/messages/{id}", "title": "Deletes a Message", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/mails/messages/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteMessages", "group": "Voice_Messages", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceMailMessage/index.js", "groupTitle": "Voice_Messages" }, { "type": "get", "url": "/api/voice/mails/messages", "title": "Gets a list of Messages", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/mails/messages -v -u {name}:{password}", "type": "json" } ], "name": "GetMessages", "group": "Voice_Messages", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/voice/mails/messages?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/voice/mails/messages?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/voice/mails/messages?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/voice/mails/messages?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/voice/mails/messages?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/voiceMailMessage/index.js", "groupTitle": "Voice_Messages" }, { "type": "get", "url": "/api/voice/mails/messages/{id}", "title": "Gets a single Message", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/mails/messages/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowMessages", "group": "Voice_Messages", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceMailMessage/index.js", "groupTitle": "Voice_Messages" }, { "type": "get", "url": "voice/mails/messages/{id}/download", "title": "Download Voice Message", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}voice/mails/messages/{id}/download -v -u {name}:{password} -X GET", "type": "json" } ], "name": "download", "group": "Voice_Messages", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceMailMessage/index.js", "groupTitle": "Voice_Messages" }, { "type": "put", "url": "/api/voice/mails/messages/{id}", "title": "Update an existing Message", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/mails/messages/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateMessages", "group": "Voice_Messages", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceMailMessage/index.js", "groupTitle": "Voice_Messages" }, { "type": "get", "url": "/api/voice/queues/reports/describe", "title": "Gets table info about Queue Reports", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/queues/reports/describe -v -u {name}:{password}", "type": "json" } ], "name": "DescribeQueue_Reports", "group": "Voice_Queue_Reports", "description": "

Motion will return a HTTP status code 200 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceQueueReport/index.js", "groupTitle": "Voice_Queue_Reports" }, { "type": "get", "url": "/api/voice/queues/reports", "title": "Gets a list of Queue Reports", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/queues/reports -v -u {name}:{password}", "type": "json" } ], "name": "GetQueue_Reports", "group": "Voice_Queue_Reports", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/voice/queues/reports?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/voice/queues/reports?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/voice/queues/reports?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/voice/queues/reports?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/voice/queues/reports?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/voiceQueueReport/index.js", "groupTitle": "Voice_Queue_Reports" }, { "type": "get", "url": "/api/voice/queues/reports/{id}", "title": "Gets a single Queue Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/queues/reports/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowQueue_Reports", "group": "Voice_Queue_Reports", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceQueueReport/index.js", "groupTitle": "Voice_Queue_Reports" }, { "type": "post", "url": "/api/voice/queues/{id}/users", "title": "Add agents to queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/queues/{id}/users -d '{\"ids\": [1,2], \"penalty\": 2}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "AddAgents", "group": "Voice_Queues", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceQueue/index.js", "groupTitle": "Voice_Queues" }, { "type": "post", "url": "/api/voice/queues/{id}/blacklists", "title": "Add blacklists to a queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/queues/{id}/blacklists -d '{\"ids\": [1,2]}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "AddBlackLists", "group": "Voice_Queues", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceQueue/index.js", "groupTitle": "Voice_Queues" }, { "type": "post", "url": "/api/voice/queues/{id}/lists", "title": "Add lists to a queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/queues/{id}/lists -d '{\"ids\": [1,2]}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "AddLists", "group": "Voice_Queues", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceQueue/index.js", "groupTitle": "Voice_Queues" }, { "type": "post", "url": "/api/voice/queues/{id}/teams", "title": "Add teams to queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/queues/{id}/teams -d '{\"ids\": [1,2]}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "AddTeams", "group": "Voice_Queues", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceQueue/index.js", "groupTitle": "Voice_Queues" }, { "type": "post", "url": "/api/voice/queues", "title": "Creates a new Queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/queues -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateQueues", "group": "Voice_Queues", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "name", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"inbound\"", "\"outbound\"" ], "optional": false, "field": "type", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "musiconhold", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "announce", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"ringall\"", "\"leastrecent\"", "\"fewestcalls\"", "\"random\"", "\"rrmemory\"", "\"linear\"", "\"wrandom\"", "\"rrordered\"" ], "optional": false, "field": "strategy", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "servicelevel", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "context", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "penaltymemberslimit", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "timeout", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "retry", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "timeoutpriority", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "weight", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "wrapuptime", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "autofill", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"", "\"all\"" ], "optional": true, "field": "autopause", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "autopausedelay", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "autopausebusy", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "autopauseunavail", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "maxlen", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "setinterfacevar", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "setqueueentryvar", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "setqueuevar", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "eventmemberstatus", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "membermacro", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "membergosub", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "announce_frequency", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "min_announce_frequency", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "periodic_announce_frequency", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "random_periodic_announce", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "relative_periodic_announce", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"", "\"once\"" ], "optional": true, "field": "announce_holdtime", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "announce_position", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "announce_to_first_user", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "announce_position_limit", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"0\"", "\"5\"", "\"10\"", "\"15\"", "\"20\"", "\"30\"" ], "optional": true, "field": "announce_round_seconds", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "monitor_format", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "monitor_type", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "queue_youarenext", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "queue_thereare", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "queue_callswaiting", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "queue_holdtime", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "queue_minute", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "queue_minutes", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "queue_seconds", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "queue_thankyou", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "queue_reporthold", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "queue_quantity1", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "queue_quantity2", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "queue_periodic_announce", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "queue_less_than", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "periodic_announce", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "joinempty", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "leavewhenempty", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "reportholdtime", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "ringinuse", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "memberdelay", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "timeoutrestart", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "defaultrule", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "acw", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "acwTimeout", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "dialActive", "description": "

Active/Disactive Campaign

" }, { "group": "Body", "type": "String", "allowedValues": [ "\"preview\"", "\"progressive\"", "\"power\"", "\"predictive\"", "\"booked\"" ], "optional": true, "field": "dialMethod", "description": "

Dial Method.

" }, { "group": "Body", "type": "Integer", "optional": true, "field": "dialLimitChannel", "description": "

Max 9999 channels, 0 means unlimited.

" }, { "group": "Body", "type": "Integer", "optional": true, "field": "dialLimitQueue", "description": "

Max 9999 member in queue(min:1, max:9999), 0 means unlimited.

" }, { "group": "Body", "type": "Float", "optional": true, "field": "dialPowerLevel", "description": "

Power Level: Calls for agents (min:1, max:10).

" }, { "group": "Body", "type": "String", "allowedValues": [ "\"agentBusyFactor\"", "\"dropRate\"" ], "optional": true, "field": "dialPredictiveOptimization", "description": "

Only for predictive method.

" }, { "group": "Body", "type": "Float", "optional": true, "field": "dialPredictiveOptimizationPercentage", "description": "

Predictive Optimization Percentage (min: 1, max: 95)

" }, { "group": "Body", "type": "Integer", "optional": true, "field": "dialPredictiveInterval", "description": "

Interval Predictive Minutes (min:5 max:30)

" }, { "group": "Body", "type": "String", "optional": true, "field": "dialOriginateCallerIdName", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "dialOriginateCallerIdNumber", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "dialOriginateTimeout", "description": "

Originate Timeout Seconds (min:1, max:999)

" }, { "group": "Body", "type": "String", "optional": true, "field": "dialQueueOptions", "description": "

https://wiki.asterisk.org/wiki/display/AST/Asterisk+13+Application_Queue

" }, { "group": "Body", "type": "Integer", "optional": true, "field": "dialQueueTimeout", "description": "

Queue Timeout Seconds (min:1, max:999)

" }, { "group": "Body", "type": "String", "optional": true, "field": "dialQueueProject", "description": "

AGI queue option (use: agi://127.0.0.1/square,<project_name>)

" }, { "group": "Body", "type": "Integer", "optional": true, "field": "dialCongestionMaxRetry", "description": "

#Congestion Retry (min:1, max:999)

" }, { "group": "Body", "type": "Integer", "optional": true, "field": "dialCongestionRetryFrequency", "description": "

Congestion Retry Frequency Minutes (min:1, max:99999)

" }, { "group": "Body", "type": "Integer", "optional": true, "field": "dialBusyMaxRetry", "description": "

#Busy Retry (min:1, max:999)

" }, { "group": "Body", "type": "Integer", "optional": true, "field": "dialBusyRetryFrequency", "description": "

Busy Retry Frequency Minutes (min:1, max:99999)

" }, { "group": "Body", "type": "Integer", "optional": true, "field": "dialNoAnswerMaxRetry", "description": "

#NoAnswer Retry (min:1, max:999)

" }, { "group": "Body", "type": "Integer", "optional": true, "field": "dialNoAnswerRetryFrequency", "description": "

NoAnswer Retry Frequency Minutes (min:1, max:99999)

" }, { "group": "Body", "type": "Integer", "optional": true, "field": "dialGlobalMaxRetry", "description": "

#Global Max Retry (min:1, max:999)

" }, { "group": "Body", "type": "String", "optional": true, "field": "dialTimezone", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "dialGlobalInterval", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "dialPrefix", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"always\"", "\"never\"", "\"onlyIfOpen\"" ], "optional": true, "field": "dialCheckDuplicateType", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "dialAMDActive", "description": "

Active/Disactive AMD

" }, { "group": "Body", "type": "Integer", "optional": true, "field": "dialAMDInitialSilence", "description": "

#AMD Initial Silence

" }, { "group": "Body", "type": "Integer", "optional": true, "field": "dialAMDGreeting", "description": "

#AMD Greeting

" }, { "group": "Body", "type": "Integer", "optional": true, "field": "dialAMDAfterGreetingSilence", "description": "

#AMD After Greeting Silence

" }, { "group": "Body", "type": "Integer", "optional": true, "field": "dialAMDTotalAnalysisTime", "description": "

#AMD Total Analysis Time

" }, { "group": "Body", "type": "Integer", "optional": true, "field": "dialAMDMinWordLength", "description": "

#AMD Min Word Length

" }, { "group": "Body", "type": "Integer", "optional": true, "field": "dialAMDBetweenWordsSilence", "description": "

#AMD Between Words Silence

" }, { "group": "Body", "type": "Integer", "optional": true, "field": "dialAMDMaximumNumberOfWords", "description": "

#AMD Maximum Number Of Words

" }, { "group": "Body", "type": "Integer", "optional": true, "field": "dialAMDSilenceThreshold", "description": "

#AMD Silence Threshold (min:0, max:32767)

" }, { "group": "Body", "type": "Integer", "optional": true, "field": "dialAMDMaximumWordLength", "description": "

#AMD Maximum Word Length

" }, { "group": "Body", "type": "Integer", "optional": true, "field": "dialRecallMeTimeout", "description": "

#RecallMe Timeout (min:1)

" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "dialRecallInQueue", "description": "

Active/Disactive Recall In Queue

" }, { "group": "Body", "type": "String", "allowedValues": [ "\"DESC\"", "\"ASC\"" ], "optional": true, "field": "dialOrderByScheduledAt", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "dialQueueProject2", "description": "

AGI queue option (use: agi://127.0.0.1/square,<project_name>)

" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "dialAgiAfterHangupClient", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "dialAgiAfterHangupAgent", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceQueue/index.js", "groupTitle": "Voice_Queues" }, { "type": "delete", "url": "/api/voice/queues/{id}", "title": "Deletes a Queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/queues/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteQueues", "group": "Voice_Queues", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceQueue/index.js", "groupTitle": "Voice_Queues" }, { "type": "get", "url": "/api/voice/queues/{id}/users", "title": "Gets queue agents", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/queues/{id}/users -v -u {name}:{password} -X GET", "type": "json" } ], "name": "GetAgents", "group": "Voice_Queues", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceQueue/index.js", "groupTitle": "Voice_Queues" }, { "type": "get", "url": "/api/voice/queues/{id}/blacklists", "title": "Get queue blacklists", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/queues/{id}/blacklists -v -u {name}:{password} -X GET", "type": "json" } ], "name": "GetBlackLists", "group": "Voice_Queues", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceQueue/index.js", "groupTitle": "Voice_Queues" }, { "type": "get", "url": "/api/voice/queues/{id}/finals", "title": "Gets queue hopper finals", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/queues/{id}/hopper_finals -v -u {name}:{password} -X GET", "type": "json" } ], "name": "GetHopperFinals", "group": "Voice_Queues", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceQueue/index.js", "groupTitle": "Voice_Queues" }, { "type": "get", "url": "/api/voice/queues/{id}/hopper_histories", "title": "Gets queue hopper histories", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/queues/{id}/hopper_histories -v -u {name}:{password} -X GET", "type": "json" } ], "name": "GetHopperHistories", "group": "Voice_Queues", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceQueue/index.js", "groupTitle": "Voice_Queues" }, { "type": "get", "url": "/api/voice/queues/{id}/hoppers", "title": "Gets queue hoppers", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/queues/{id}/hoppers -v -u {name}:{password} -X GET", "type": "json" } ], "name": "GetHoppers", "group": "Voice_Queues", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceQueue/index.js", "groupTitle": "Voice_Queues" }, { "type": "get", "url": "/api/voice/queues/{id}/lists", "title": "Get queue lists", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/queues/{id}/lists -v -u {name}:{password} -X GET", "type": "json" } ], "name": "GetLists", "group": "Voice_Queues", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceQueue/index.js", "groupTitle": "Voice_Queues" }, { "type": "get", "url": "/api/voice/queues/{id}/members", "title": "Gets queue members", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/queues/{id}/members -v -u {name}:{password} -X GET", "type": "json" } ], "name": "GetMembers", "group": "Voice_Queues", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceQueue/index.js", "groupTitle": "Voice_Queues" }, { "type": "get", "url": "/api/voice/queues", "title": "Gets a list of Queues", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/queues -v -u {name}:{password}", "type": "json" } ], "name": "GetQueues", "group": "Voice_Queues", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/voice/queues?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/voice/queues?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/voice/queues?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/voice/queues?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/voice/queues?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/voiceQueue/index.js", "groupTitle": "Voice_Queues" }, { "type": "get", "url": "/api/voice/queues/{id}/teams", "title": "Gets queue team", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/queues/{id}/teams -v -u {name}:{password} -X GET", "type": "json" } ], "name": "GetTeams", "group": "Voice_Queues", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceQueue/index.js", "groupTitle": "Voice_Queues" }, { "type": "delete", "url": "/api/voice/queues/{id}/users", "title": "Removes agents from a queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/queues/{id}/users?ids=1&ids=2 -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "RemoveAgents", "group": "Voice_Queues", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceQueue/index.js", "groupTitle": "Voice_Queues" }, { "type": "delete", "url": "/api/voice/queues/{id}/blacklists", "title": "Remove blacklists from a queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/queues/{id}/blacklists?ids=1&ids=2 -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "RemoveBlackLists", "group": "Voice_Queues", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceQueue/index.js", "groupTitle": "Voice_Queues" }, { "type": "delete", "url": "/api/voice/queues/{id}/lists", "title": "Remove lists from a queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/queues/{id}/lists?ids=1&ids=2 -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "RemoveLists", "group": "Voice_Queues", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceQueue/index.js", "groupTitle": "Voice_Queues" }, { "type": "get", "url": "/api/voice/queues/{id}", "title": "Gets a single Queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/queues/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowQueues", "group": "Voice_Queues", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceQueue/index.js", "groupTitle": "Voice_Queues" }, { "type": "get", "url": "/api/voice/queues/{id}/blacks", "title": "Gets queue hopper blacks", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/queues/{id}/hopper_black -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getHopperBlacks", "group": "Voice_Queues", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceQueue/index.js", "groupTitle": "Voice_Queues" }, { "type": "put", "url": "/api/voice/queues/{id}", "title": "Update an existing Queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/queues/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateQueues", "group": "Voice_Queues", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceQueue/index.js", "groupTitle": "Voice_Queues" }, { "type": "post", "url": "/api/voice/recordings", "title": "Creates a new Recording", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/recordings -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateRecordings", "group": "Voice_Recordings", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "Virtual", "optional": true, "field": "format", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "uniqueid", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "channel", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "membername", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "calleridnum", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "calleridname", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "connectedlinenum", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "connectedlinename", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "accountcode", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "context", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "exten", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "value", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "type", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "rating", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "queue", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "userDisposition", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "createdAt", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "updatedAt", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceRecording/index.js", "groupTitle": "Voice_Recordings" }, { "type": "delete", "url": "/api/voice/recordings/{id}", "title": "Deletes a Recording", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/recordings/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteRecordings", "group": "Voice_Recordings", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceRecording/index.js", "groupTitle": "Voice_Recordings" }, { "type": "get", "url": "/api/voice/recordings/describe", "title": "Gets table info about Recordings", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/recordings/describe -v -u {name}:{password}", "type": "json" } ], "name": "DescribeRecordings", "group": "Voice_Recordings", "description": "

Motion will return a HTTP status code 200 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceRecording/index.js", "groupTitle": "Voice_Recordings" }, { "type": "get", "url": "/api/voice/recordings", "title": "Gets a list of Recordings", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/recordings -v -u {name}:{password}", "type": "json" } ], "name": "GetRecordings", "group": "Voice_Recordings", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/voice/recordings?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/voice/recordings?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/voice/recordings?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/voice/recordings?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/voice/recordings?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/voiceRecording/index.js", "groupTitle": "Voice_Recordings" }, { "type": "get", "url": "/api/voice/recordings/{id}", "title": "Gets a single Recording", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/recordings/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowRecordings", "group": "Voice_Recordings", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceRecording/index.js", "groupTitle": "Voice_Recordings" }, { "type": "get", "url": "/api/voice/recordings/{id}/download", "title": "Download Recording", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/recordings/{id}/download -v -u {name}:{password} -X GET", "type": "json" } ], "name": "download", "group": "Voice_Recordings", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceRecording/index.js", "groupTitle": "Voice_Recordings" }, { "type": "put", "url": "/api/voice/recordings/{id}", "title": "Update an existing Recording", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/recordings/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateRecordings", "group": "Voice_Recordings", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceRecording/index.js", "groupTitle": "Voice_Recordings" }, { "type": "post", "url": "/api/voice/transfers/reports", "title": "Creates a new Transfer Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/transfers/reports -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateTransfer_Reports", "group": "Voice_Transfer_Reports", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "allowedValues": [ "\"blind\"", "\"attended\"" ], "optional": true, "field": "type", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "result", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "transfererchannel", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "transferercalleridnum", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "transferercalleridname", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "transfererconnectedlinenum", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "transfererconnectedlinename", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "transfereraccountcode", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "transferercontext", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "transfererexten", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "transfererlinkedid", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "transfereechannel", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "transfereecalleridnum", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "transfereecalleridname", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "transfereeconnectedlinenum", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "transfereeconnectedlinename", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "transfereeaccountcode", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "transfereecontext", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "transfereeexten", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "transfereelinkedid", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"Yes\"", "\"No\"" ], "optional": true, "field": "isexternal", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "context", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "extension", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceTransferReport/index.js", "groupTitle": "Voice_Transfer_Reports" }, { "type": "delete", "url": "/api/voice/transfers/reports/{id}", "title": "Deletes a Transfer Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/transfers/reports/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteTransfer_Reports", "group": "Voice_Transfer_Reports", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceTransferReport/index.js", "groupTitle": "Voice_Transfer_Reports" }, { "type": "get", "url": "/api/voice/transfers/reports", "title": "Gets a list of Transfer Reports", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/transfers/reports -v -u {name}:{password}", "type": "json" } ], "name": "GetTransfer_Reports", "group": "Voice_Transfer_Reports", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/voice/transfers/reports?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/voice/transfers/reports?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/voice/transfers/reports?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/voice/transfers/reports?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/voice/transfers/reports?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/voiceTransferReport/index.js", "groupTitle": "Voice_Transfer_Reports" }, { "type": "get", "url": "/api/voice/transfers/reports/{id}", "title": "Gets a single Transfer Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/transfers/reports/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowTransfer_Reports", "group": "Voice_Transfer_Reports", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceTransferReport/index.js", "groupTitle": "Voice_Transfer_Reports" }, { "type": "put", "url": "/api/voice/transfers/reports/{id}", "title": "Update an existing Transfer Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/transfers/reports/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateTransfer_Reports", "group": "Voice_Transfer_Reports", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceTransferReport/index.js", "groupTitle": "Voice_Transfer_Reports" }, { "type": "post", "url": "/api/integrations/zendesk/accounts", "title": "Creates a new Zendesk Account", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/zendesk/accounts -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateZendesk_Accounts", "group": "Zendesk_Accounts", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": true, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "username", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "password", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "token", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "remoteUri", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"password\"", "\"token\"" ], "optional": true, "field": "authType", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "serverUrl", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"integrationTab\"", "\"newTab\"" ], "optional": true, "field": "type", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intZendeskAccount/index.js", "groupTitle": "Zendesk_Accounts" }, { "type": "delete", "url": "/api/integrations/zendesk/accounts/{id}", "title": "Deletes a Zendesk Account", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/zendesk/accounts/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteZendesk_Accounts", "group": "Zendesk_Accounts", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intZendeskAccount/index.js", "groupTitle": "Zendesk_Accounts" }, { "type": "get", "url": "/api/integrations/zendesk/accounts", "title": "Gets a list of Zendesk Accounts", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/zendesk/accounts -v -u {name}:{password}", "type": "json" } ], "name": "GetZendesk_Accounts", "group": "Zendesk_Accounts", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/integrations/zendesk/accounts?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/integrations/zendesk/accounts?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/integrations/zendesk/accounts?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/integrations/zendesk/accounts?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/integrations/zendesk/accounts?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/intZendeskAccount/index.js", "groupTitle": "Zendesk_Accounts" }, { "type": "get", "url": "/api/integrations/zendesk/accounts/{id}", "title": "Gets a single Zendesk Account", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/zendesk/accounts/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowZendesk_Accounts", "group": "Zendesk_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intZendeskAccount/index.js", "groupTitle": "Zendesk_Accounts" }, { "type": "post", "url": "/api/integrations/zendesk/accounts/{id}/configurations", "title": "Creates new configuration", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/zendesk/accounts/{id}/configurations -d '{\"name\": \"conf1\"}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addConfiguration", "group": "Zendesk_Accounts", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intZendeskAccount/index.js", "groupTitle": "Zendesk_Accounts" }, { "type": "get", "url": "/api/integrations/zendesk/accounts/{id}/configurations", "title": "Gets account configurations", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/zendesk/accounts/{id}/configurations -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getConfigurations", "group": "Zendesk_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intZendeskAccount/index.js", "groupTitle": "Zendesk_Accounts" }, { "type": "get", "url": "/api/integrations/zendesk/accounts/{id}/fields", "title": "Gets account fields", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/zendesk/accounts/{id}/fields -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getFields", "group": "Zendesk_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intZendeskAccount/index.js", "groupTitle": "Zendesk_Accounts" }, { "type": "put", "url": "/api/integrations/zendesk/accounts/{id}", "title": "Update an existing Zendesk Account", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/zendesk/accounts/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateZendesk_Accounts", "group": "Zendesk_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intZendeskAccount/index.js", "groupTitle": "Zendesk_Accounts" }, { "type": "post", "url": "/api/integrations/zendesk/configurations", "title": "Creates a new Zendesk Configuration", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/zendesk/configurations -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateZendesk_Configurations", "group": "Zendesk_Configurations", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": true, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intZendeskConfiguration/index.js", "groupTitle": "Zendesk_Configurations" }, { "type": "delete", "url": "/api/integrations/zendesk/configurations/{id}", "title": "Deletes a Zendesk Configuration", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/zendesk/configurations/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteZendesk_Configurations", "group": "Zendesk_Configurations", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intZendeskConfiguration/index.js", "groupTitle": "Zendesk_Configurations" }, { "type": "get", "url": "/api/integrations/zendesk/configurations", "title": "Gets a list of Zendesk Configurations", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/zendesk/configurations -v -u {name}:{password}", "type": "json" } ], "name": "GetZendesk_Configurations", "group": "Zendesk_Configurations", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/integrations/zendesk/configurations?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/integrations/zendesk/configurations?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/integrations/zendesk/configurations?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/integrations/zendesk/configurations?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/integrations/zendesk/configurations?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/intZendeskConfiguration/index.js", "groupTitle": "Zendesk_Configurations" }, { "type": "get", "url": "/api/integrations/zendesk/configurations/{id}", "title": "Gets a single Zendesk Configuration", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/zendesk/configurations/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowZendesk_Configurations", "group": "Zendesk_Configurations", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intZendeskConfiguration/index.js", "groupTitle": "Zendesk_Configurations" }, { "type": "get", "url": "/api/integrations/zendesk/configurations/{id}/descriptions", "title": "Gets configurations descriptions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/zendesk/configurations/{id}/descriptions -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getDescriptions", "group": "Zendesk_Configurations", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intZendeskConfiguration/index.js", "groupTitle": "Zendesk_Configurations" }, { "type": "get", "url": "/api/integrations/zendesk/configurations/{id}/fields", "title": "Gets configurations fields", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/zendesk/configurations/{id}/fields -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getFields", "group": "Zendesk_Configurations", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intZendeskConfiguration/index.js", "groupTitle": "Zendesk_Configurations" }, { "type": "get", "url": "/api/integrations/zendesk/configurations/{id}/subjects", "title": "Gets configurations subjects", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/zendesk/configurations/{id}/subjects -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getSubjects", "group": "Zendesk_Configurations", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intZendeskConfiguration/index.js", "groupTitle": "Zendesk_Configurations" }, { "type": "get", "url": "/api/integrations/zendesk/configurations/{id}/tags", "title": "Gets configurations tags", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/zendesk/configurations/{id}/tags -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getTags", "group": "Zendesk_Configurations", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intZendeskConfiguration/index.js", "groupTitle": "Zendesk_Configurations" }, { "type": "post", "url": "/api/integrations/zendesk/configurations/{id}/tags", "title": "Sets new tags", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/zendesk/configurations/{id}/tags -d '{\"ids\": [1,12]}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "setTags", "group": "Zendesk_Configurations", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intZendeskConfiguration/index.js", "groupTitle": "Zendesk_Configurations" }, { "type": "put", "url": "/api/integrations/zendesk/configurations/{id}", "title": "Update an existing Zendesk Configuration", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/zendesk/configurations/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateZendesk_Configurations", "group": "Zendesk_Configurations", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intZendeskConfiguration/index.js", "groupTitle": "Zendesk_Configurations" }, { "type": "post", "url": "/api/integrations/zendesk/fields", "title": "Creates a new Zendesk Field", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/zendesk/fields -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateZendesk_Fields", "group": "Zendesk_Fields", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "allowedValues": [ "\"string\"", "\"variable\"", "\"customVariable\"", "\"keyValue\"" ], "optional": true, "field": "type", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "content", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "key", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"string\"", "\"variable\"", "\"customVariable\"" ], "optional": true, "field": "keyType", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "keyContent", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "idField", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "nameField", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "customField", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "variableName", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intZendeskField/index.js", "groupTitle": "Zendesk_Fields" }, { "type": "delete", "url": "/api/integrations/zendesk/fields/{id}", "title": "Deletes a Zendesk Field", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/zendesk/fields/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteZendesk_Fields", "group": "Zendesk_Fields", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intZendeskField/index.js", "groupTitle": "Zendesk_Fields" }, { "type": "get", "url": "/api/integrations/zendesk/fields", "title": "Gets a list of Zendesk Fields", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/zendesk/fields -v -u {name}:{password}", "type": "json" } ], "name": "GetZendesk_Fields", "group": "Zendesk_Fields", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/integrations/zendesk/fields?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/integrations/zendesk/fields?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/integrations/zendesk/fields?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/integrations/zendesk/fields?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/integrations/zendesk/fields?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/intZendeskField/index.js", "groupTitle": "Zendesk_Fields" }, { "type": "get", "url": "/api/integrations/zendesk/fields/{id}", "title": "Gets a single Zendesk Field", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/zendesk/fields/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowZendesk_Fields", "group": "Zendesk_Fields", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intZendeskField/index.js", "groupTitle": "Zendesk_Fields" }, { "type": "put", "url": "/api/integrations/zendesk/fields/{id}", "title": "Update an existing Zendesk Field", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/zendesk/fields/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateZendesk_Fields", "group": "Zendesk_Fields", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intZendeskField/index.js", "groupTitle": "Zendesk_Fields" }, { "type": "post", "url": "/api/integrations/zoho/accounts", "title": "Creates a new Zoho Account", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/zoho/accounts -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateZoho_Accounts", "group": "Zoho_Accounts", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": true, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "authToken", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "host", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "serverUrl", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intZohoAccount/index.js", "groupTitle": "Zoho_Accounts" }, { "type": "delete", "url": "/api/integrations/zoho/accounts/{id}", "title": "Deletes a Zoho Account", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/zoho/accounts/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteZoho_Accounts", "group": "Zoho_Accounts", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intZohoAccount/index.js", "groupTitle": "Zoho_Accounts" }, { "type": "get", "url": "/api/integrations/zoho/accounts", "title": "Gets a list of Zoho Accounts", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/zoho/accounts -v -u {name}:{password}", "type": "json" } ], "name": "GetZoho_Accounts", "group": "Zoho_Accounts", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/integrations/zoho/accounts?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/integrations/zoho/accounts?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/integrations/zoho/accounts?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/integrations/zoho/accounts?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/integrations/zoho/accounts?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/intZohoAccount/index.js", "groupTitle": "Zoho_Accounts" }, { "type": "get", "url": "/api/integrations/zoho/accounts/{id}", "title": "Gets a single Zoho Account", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/zoho/accounts/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowZoho_Accounts", "group": "Zoho_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intZohoAccount/index.js", "groupTitle": "Zoho_Accounts" }, { "type": "post", "url": "/api/integrations/zoho/accounts/{id}/configurations", "title": "Creates new configuration", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/zoho/accounts/{id}/configurations -d '{\"name\": \"conf1\"}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addConfiguration", "group": "Zoho_Accounts", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intZohoAccount/index.js", "groupTitle": "Zoho_Accounts" }, { "type": "get", "url": "/api/integrations/zoho/accounts/{id}/configurations", "title": "Gets account configurations", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/zoho/accounts/{id}/configurations -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getConfigurations", "group": "Zoho_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intZohoAccount/index.js", "groupTitle": "Zoho_Accounts" }, { "type": "get", "url": "/api/integrations/zoho/accounts/{id}/fields", "title": "Gets account fields", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/zoho/accounts/{id}/fields -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getFields", "group": "Zoho_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intZohoAccount/index.js", "groupTitle": "Zoho_Accounts" }, { "type": "put", "url": "/api/integrations/zoho/accounts/{id}", "title": "Update an existing Zoho Account", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/zoho/accounts/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateZoho_Accounts", "group": "Zoho_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intZohoAccount/index.js", "groupTitle": "Zoho_Accounts" }, { "type": "post", "url": "/api/integrations/zoho/configurations", "title": "Creates a new Zoho Configuration", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/zoho/configurations -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateZoho_Configurations", "group": "Zoho_Configurations", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": true, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intZohoConfiguration/index.js", "groupTitle": "Zoho_Configurations" }, { "type": "delete", "url": "/api/integrations/zoho/configurations/{id}", "title": "Deletes a Zoho Configuration", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/zoho/configurations/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteZoho_Configurations", "group": "Zoho_Configurations", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intZohoConfiguration/index.js", "groupTitle": "Zoho_Configurations" }, { "type": "get", "url": "/api/integrations/zoho/configurations", "title": "Gets a list of Zoho Configurations", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/zoho/configurations -v -u {name}:{password}", "type": "json" } ], "name": "GetZoho_Configurations", "group": "Zoho_Configurations", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/integrations/zoho/configurations?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/integrations/zoho/configurations?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/integrations/zoho/configurations?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/integrations/zoho/configurations?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/integrations/zoho/configurations?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/intZohoConfiguration/index.js", "groupTitle": "Zoho_Configurations" }, { "type": "get", "url": "/api/integrations/zoho/configurations/{id}", "title": "Gets a single Zoho Configuration", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/zoho/configurations/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowZoho_Configurations", "group": "Zoho_Configurations", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intZohoConfiguration/index.js", "groupTitle": "Zoho_Configurations" }, { "type": "get", "url": "/api/integrations/zoho/configurations/{id}/descriptions", "title": "Gets configurations descriptions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/zoho/configurations/{id}/descriptions -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getDescriptions", "group": "Zoho_Configurations", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intZohoConfiguration/index.js", "groupTitle": "Zoho_Configurations" }, { "type": "get", "url": "/api/integrations/zoho/configurations/{id}/fields", "title": "Gets configurations fields", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/zoho/configurations/{id}/fields -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getFields", "group": "Zoho_Configurations", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intZohoConfiguration/index.js", "groupTitle": "Zoho_Configurations" }, { "type": "get", "url": "/api/integrations/zoho/configurations/{id}/subjects", "title": "Gets configurations subjects", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/zoho/configurations/{id}/subjects -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getSubjects", "group": "Zoho_Configurations", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intZohoConfiguration/index.js", "groupTitle": "Zoho_Configurations" }, { "type": "put", "url": "/api/integrations/zoho/configurations/{id}", "title": "Update an existing Zoho Configuration", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/zoho/configurations/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateZoho_Configurations", "group": "Zoho_Configurations", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intZohoConfiguration/index.js", "groupTitle": "Zoho_Configurations" }, { "type": "post", "url": "/api/integrations/zoho/fields", "title": "Creates a new Zoho Field", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/zoho/fields -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateZoho_Fields", "group": "Zoho_Fields", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "allowedValues": [ "\"string\"", "\"variable\"", "\"customVariable\"", "\"keyValue\"" ], "optional": true, "field": "type", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "content", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "key", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"string\"", "\"variable\"", "\"customVariable\"" ], "optional": true, "field": "keyType", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "keyContent", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "idField", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "nameField", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "customField", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "variableName", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intZohoField/index.js", "groupTitle": "Zoho_Fields" }, { "type": "delete", "url": "/api/integrations/zoho/fields/{id}", "title": "Deletes a Zoho Field", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/zoho/fields/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteZoho_Fields", "group": "Zoho_Fields", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intZohoField/index.js", "groupTitle": "Zoho_Fields" }, { "type": "get", "url": "/api/integrations/zoho/fields", "title": "Gets a list of Zoho Fields", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/zoho/fields -v -u {name}:{password}", "type": "json" } ], "name": "GetZoho_Fields", "group": "Zoho_Fields", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/integrations/zoho/fields?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/integrations/zoho/fields?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/integrations/zoho/fields?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/integrations/zoho/fields?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/integrations/zoho/fields?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/intZohoField/index.js", "groupTitle": "Zoho_Fields" }, { "type": "get", "url": "/api/integrations/zoho/fields/{id}", "title": "Gets a single Zoho Field", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/zoho/fields/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowZoho_Fields", "group": "Zoho_Fields", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intZohoField/index.js", "groupTitle": "Zoho_Fields" }, { "type": "put", "url": "/api/integrations/zoho/fields/{id}", "title": "Update an existing Zoho Field", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/zoho/fields/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateZoho_Fields", "group": "Zoho_Fields", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intZohoField/index.js", "groupTitle": "Zoho_Fields" }, { "type": "post", "url": "/api/cdr", "title": "Creates a new Cdr", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cdr -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateCdrs", "group": "cdr", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "calldate", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "clid", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "src", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "dst", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "dcontext", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "channel", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "dstchannel", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "lastapp", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "lastdata", "description": "" }, { "group": "Body", "type": "Integer", "optional": false, "field": "duration", "description": "" }, { "group": "Body", "type": "Integer", "optional": false, "field": "billsec", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "disposition", "description": "" }, { "group": "Body", "type": "Integer", "optional": false, "field": "amaflags", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "accountcode", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "userfield", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "uniqueid", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "linkedid", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "sequence", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "peeraccount", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "type", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "tag", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cdr/index.js", "groupTitle": "cdr" }, { "type": "delete", "url": "/api/cdr/{id}", "title": "Deletes a Cdr", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cdr/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteCdrs", "group": "cdr", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cdr/index.js", "groupTitle": "cdr" }, { "type": "get", "url": "/api/cdr", "title": "Gets a list of Cdrs", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cdr -v -u {name}:{password}", "type": "json" } ], "name": "GetCdrs", "group": "cdr", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/cdr?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/cdr?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/cdr?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/cdr?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/cdr?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/cdr/index.js", "groupTitle": "cdr" }, { "type": "get", "url": "/api/cdr/{id}", "title": "Gets a single Cdr", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cdr/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowCdrs", "group": "cdr", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cdr/index.js", "groupTitle": "cdr" }, { "type": "put", "url": "/api/cdr/{id}", "title": "Update an existing Cdr", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cdr/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateCdrs", "group": "cdr", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cdr/index.js", "groupTitle": "cdr" }, { "type": "post", "url": "/api/voiceQueuesLog", "title": "Creates a new VoiceQueuesLog", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voiceQueuesLog -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateVoiceQueuesLogs", "group": "voiceQueuesLog", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": true, "field": "time", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "callid", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "queuename", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "agent", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "event", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "data1", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "data2", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "data3", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "data4", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "data5", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "dtm", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceQueuesLog/index.js", "groupTitle": "voiceQueuesLog" }, { "type": "delete", "url": "/api/voiceQueuesLog/{id}", "title": "Deletes a VoiceQueuesLog", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voiceQueuesLog/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteVoiceQueuesLogs", "group": "voiceQueuesLog", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceQueuesLog/index.js", "groupTitle": "voiceQueuesLog" }, { "type": "get", "url": "/api/voiceQueuesLog", "title": "Gets a list of VoiceQueuesLogs", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voiceQueuesLog -v -u {name}:{password}", "type": "json" } ], "name": "GetVoiceQueuesLogs", "group": "voiceQueuesLog", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/voiceQueuesLog?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/voiceQueuesLog?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/voiceQueuesLog?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/voiceQueuesLog?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/voiceQueuesLog?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/voiceQueuesLog/index.js", "groupTitle": "voiceQueuesLog" }, { "type": "get", "url": "/api/voiceQueuesLog/{id}", "title": "Gets a single VoiceQueuesLog", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voiceQueuesLog/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowVoiceQueuesLogs", "group": "voiceQueuesLog", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceQueuesLog/index.js", "groupTitle": "voiceQueuesLog" }, { "type": "put", "url": "/api/voiceQueuesLog/{id}", "title": "Update an existing VoiceQueuesLog", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voiceQueuesLog/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateVoiceQueuesLogs", "group": "voiceQueuesLog", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceQueuesLog/index.js", "groupTitle": "voiceQueuesLog" } ] +[ { "type": "delete", "url": "/api/actions/{id}", "title": "Deletes a Action", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/actions/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteActions", "group": "Actions", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/action/index.js", "groupTitle": "Actions" }, { "type": "put", "url": "/api/actions/{id}", "title": "Update an existing Action", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/actions/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateActions", "group": "Actions", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/action/index.js", "groupTitle": "Actions" }, { "type": "post", "url": "/api/analytics/custom_reports", "title": "Creates a new Analytic Custom Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/analytics/custom_reports -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateAnalytic_Custom_Reports", "group": "Analytic_Custom_Reports", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "parent", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "table", "description": "" }, { "group": "Body", "type": "Text", "optional": true, "field": "conditions", "description": "" }, { "group": "Body", "type": "Text", "optional": true, "field": "joins", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/analyticCustomReport/index.js", "groupTitle": "Analytic_Custom_Reports" }, { "type": "delete", "url": "/api/analytics/custom_reports/{id}", "title": "Deletes a Analytic Custom Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/analytics/custom_reports/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteAnalytic_Custom_Reports", "group": "Analytic_Custom_Reports", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/analyticCustomReport/index.js", "groupTitle": "Analytic_Custom_Reports" }, { "type": "get", "url": "/api/analytics/custom_reports", "title": "Gets a list of Analytic Custom Reports", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/analytics/custom_reports -v -u {name}:{password}", "type": "json" } ], "name": "GetAnalytic_Custom_Reports", "group": "Analytic_Custom_Reports", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/analytics/custom_reports?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/analytics/custom_reports?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/analytics/custom_reports?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/analytics/custom_reports?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/analytics/custom_reports?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/analyticCustomReport/index.js", "groupTitle": "Analytic_Custom_Reports" }, { "type": "get", "url": "/api/analytics/custom_reports/{id}", "title": "Gets a single Analytic Custom Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/analytics/custom_reports/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowAnalytic_Custom_Reports", "group": "Analytic_Custom_Reports", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/analyticCustomReport/index.js", "groupTitle": "Analytic_Custom_Reports" }, { "type": "get", "url": "/api/analytics/custom_reports/{id}/preview", "title": "Report Preview", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/analytics/custom_reports/{id}/preview -v -u {name}:{password} -X GET", "type": "json" } ], "name": "preview", "group": "Analytic_Custom_Reports", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/analyticCustomReport/index.js", "groupTitle": "Analytic_Custom_Reports" }, { "type": "get", "url": "/api/analytics/custom_reports/{id}/query", "title": "Report Query SQL", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/analytics/custom_reports/{id}/query -v -u {name}:{password} -X GET", "type": "json" } ], "name": "query", "group": "Analytic_Custom_Reports", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/analyticCustomReport/index.js", "groupTitle": "Analytic_Custom_Reports" }, { "type": "get", "url": "/api/analytics/custom_reports/{id}/run", "title": "Report Run", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/analytics/custom_reports/{id}/run -v -u {name}:{password} -X GET", "type": "json" } ], "name": "run", "group": "Analytic_Custom_Reports", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/analyticCustomReport/index.js", "groupTitle": "Analytic_Custom_Reports" }, { "type": "put", "url": "/api/analytics/custom_reports/{id}", "title": "Update an existing Analytic Custom Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/analytics/custom_reports/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateAnalytic_Custom_Reports", "group": "Analytic_Custom_Reports", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/analyticCustomReport/index.js", "groupTitle": "Analytic_Custom_Reports" }, { "type": "post", "url": "/api/analytics/default_reports", "title": "Creates a new Analytic Default Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/analytics/default_reports -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateAnalytic_Default_Reports", "group": "Analytic_Default_Reports", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "parent", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "table", "description": "" }, { "group": "Body", "type": "Text", "optional": true, "field": "conditions", "description": "" }, { "group": "Body", "type": "Text", "optional": true, "field": "joins", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/analyticDefaultReport/index.js", "groupTitle": "Analytic_Default_Reports" }, { "type": "delete", "url": "/api/analytics/default_reports/{id}", "title": "Deletes a Analytic Default Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/analytics/default_reports/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteAnalytic_Default_Reports", "group": "Analytic_Default_Reports", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/analyticDefaultReport/index.js", "groupTitle": "Analytic_Default_Reports" }, { "type": "get", "url": "/api/analytics/default_reports", "title": "Gets a list of Analytic Default Reports", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/analytics/default_reports -v -u {name}:{password}", "type": "json" } ], "name": "GetAnalytic_Default_Reports", "group": "Analytic_Default_Reports", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/analytics/default_reports?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/analytics/default_reports?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/analytics/default_reports?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/analytics/default_reports?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/analytics/default_reports?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/analyticDefaultReport/index.js", "groupTitle": "Analytic_Default_Reports" }, { "type": "get", "url": "/api/analytics/default_reports/{id}", "title": "Gets a single Analytic Default Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/analytics/default_reports/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowAnalytic_Default_Reports", "group": "Analytic_Default_Reports", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/analyticDefaultReport/index.js", "groupTitle": "Analytic_Default_Reports" }, { "type": "get", "url": "/api/analytics/default_reports/{id}/preview", "title": "Report Preview", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/analytics/default_reports/{id}/preview -v -u {name}:{password} -X GET", "type": "json" } ], "name": "preview", "group": "Analytic_Default_Reports", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/analyticDefaultReport/index.js", "groupTitle": "Analytic_Default_Reports" }, { "type": "get", "url": "/api/analytics/default_reports/{id}/query", "title": "Report Query SQL", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/analytics/default_reports/{id}/query -v -u {name}:{password} -X GET", "type": "json" } ], "name": "query", "group": "Analytic_Default_Reports", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/analyticDefaultReport/index.js", "groupTitle": "Analytic_Default_Reports" }, { "type": "get", "url": "/api/analytics/default_reports/{id}/run", "title": "Report Run", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/analytics/default_reports/{id}/run -v -u {name}:{password} -X GET", "type": "json" } ], "name": "run", "group": "Analytic_Default_Reports", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/analyticDefaultReport/index.js", "groupTitle": "Analytic_Default_Reports" }, { "type": "put", "url": "/api/analytics/default_reports/{id}", "title": "Update an existing Analytic Default Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/analytics/default_reports/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateAnalytic_Default_Reports", "group": "Analytic_Default_Reports", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/analyticDefaultReport/index.js", "groupTitle": "Analytic_Default_Reports" }, { "type": "post", "url": "/api/analytics/extracted_reports", "title": "Creates a new Analytic Extracted Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/analytics/extracted_reports -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateAnalytic_Extacted_Reports", "group": "Analytic_Extracted_Reports", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "name", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"csv\"", "\"pdf\"", "\"xlsx\"" ], "optional": false, "field": "output", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "savename", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "startDate", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "endDate", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "status", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"manual\"", "\"scheduled\"" ], "optional": false, "field": "type", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/analyticExtractedReport/index.js", "groupTitle": "Analytic_Extracted_Reports" }, { "type": "delete", "url": "/api/analytics/extracted_reports/{id}", "title": "Deletes a Analytic Extracted Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/analytics/extracted_reports/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteAnalytic_Extacted_Reports", "group": "Analytic_Extracted_Reports", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/analyticExtractedReport/index.js", "groupTitle": "Analytic_Extracted_Reports" }, { "type": "get", "url": "/api/analytics/extracted_reports", "title": "Gets a list of Analytic Extacted Reports", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/analytics/extracted_reports -v -u {name}:{password}", "type": "json" } ], "name": "GetAnalytic_Extacted_Reports", "group": "Analytic_Extracted_Reports", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/analytics/extracted_reports?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/analytics/extracted_reports?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/analytics/extracted_reports?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/analytics/extracted_reports?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/analytics/extracted_reports?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/analyticExtractedReport/index.js", "groupTitle": "Analytic_Extracted_Reports" }, { "type": "get", "url": "/api/analytics/extracted_reports/{id}", "title": "Gets a single Analytic Extracted Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/analytics/extracted_reports/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowAnalytic_Extacted_Reports", "group": "Analytic_Extracted_Reports", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/analyticExtractedReport/index.js", "groupTitle": "Analytic_Extracted_Reports" }, { "type": "get", "url": "/api/analytics/extracted_reports/{id}/download", "title": "Download Extracted Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/analytics/extracted_reports/{id}/download -v -u {name}:{password} -X GET", "type": "json" } ], "name": "download", "group": "Analytic_Extracted_Reports", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/analyticExtractedReport/index.js", "groupTitle": "Analytic_Extracted_Reports" }, { "type": "put", "url": "/api/analytics/extracted_reports/{id}", "title": "Update an existing Analytic Extracted Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/analytics/extracted_reports/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateAnalytic_Extacted_Reports", "group": "Analytic_Extracted_Reports", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/analyticExtractedReport/index.js", "groupTitle": "Analytic_Extracted_Reports" }, { "type": "post", "url": "/api/analytics/field_reports/create_many", "title": "Creates many Analytic Field Reports", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/analytics/field_reports/create_many -d '[{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}]' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "BulkCreateAnalytic_Field_Reports", "group": "Analytic_Field_Reports", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "field", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "alias", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "function", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "format", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "groupBy", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "orderBy", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "custom", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/analyticFieldReport/index.js", "groupTitle": "Analytic_Field_Reports" }, { "type": "delete", "url": "/api/analytics/field_reports/destroy_many?ids={ids}", "title": "Deletes many Analytic Field Reports", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/analytics/field_reports/destroy_many?ids=1&ids=2&ids=3 -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "BulkDeleteAnalytic_Field_Reports", "group": "Analytic_Field_Reports", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/analyticFieldReport/index.js", "groupTitle": "Analytic_Field_Reports" }, { "type": "post", "url": "/api/analytics/field_reports", "title": "Creates a new Analytic Field Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/analytics/field_reports -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateAnalytic_Field_Reports", "group": "Analytic_Field_Reports", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "field", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "alias", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "function", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "format", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "groupBy", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "orderBy", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "custom", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/analyticFieldReport/index.js", "groupTitle": "Analytic_Field_Reports" }, { "type": "delete", "url": "/api/analytics/field_reports/{id}", "title": "Deletes a Analytic Field Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/analytics/field_reports/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteAnalytic_Field_Reports", "group": "Analytic_Field_Reports", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/analyticFieldReport/index.js", "groupTitle": "Analytic_Field_Reports" }, { "type": "get", "url": "/api/analytics/field_reports", "title": "Gets a list of Analytic Field Reports", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/analytics/field_reports -v -u {name}:{password}", "type": "json" } ], "name": "GetAnalytic_Field_Reports", "group": "Analytic_Field_Reports", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/analytics/field_reports?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/analytics/field_reports?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/analytics/field_reports?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/analytics/field_reports?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/analytics/field_reports?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/analyticFieldReport/index.js", "groupTitle": "Analytic_Field_Reports" }, { "type": "get", "url": "/api/analytics/field_reports/{id}", "title": "Gets a single Analytic Field Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/analytics/field_reports/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowAnalytic_Field_Reports", "group": "Analytic_Field_Reports", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/analyticFieldReport/index.js", "groupTitle": "Analytic_Field_Reports" }, { "type": "post", "url": "/api/analytics/field_reports/{id}/create_many", "title": "Rewrite fields set", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/analytics/field_reports/{id}/create_many -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addFields", "group": "Analytic_Field_Reports", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/analyticFieldReport/index.js", "groupTitle": "Analytic_Field_Reports" }, { "type": "put", "url": "/api/analytics/field_reports/{id}", "title": "Update an existing Analytic Field Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/analytics/field_reports/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateAnalytic_Field_Reports", "group": "Analytic_Field_Reports", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/analyticFieldReport/index.js", "groupTitle": "Analytic_Field_Reports" }, { "type": "post", "url": "/api/analytics/metrics", "title": "Creates a new Analytic Metrics", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/analytics/metrics -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateAnalytic_Metric", "group": "Analytic_Metrics", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "table", "description": "" }, { "group": "Body", "type": "Text", "optional": true, "field": "metric", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/analyticMetric/index.js", "groupTitle": "Analytic_Metrics" }, { "type": "delete", "url": "/api/analytics/metrics/{id}", "title": "Deletes a Analytic Metrics", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/analytics/metrics/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteAnalytic_Metric", "group": "Analytic_Metrics", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/analyticMetric/index.js", "groupTitle": "Analytic_Metrics" }, { "type": "get", "url": "/api/analytics/metrics", "title": "Gets a list of Analytic Metric", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/analytics/metrics -v -u {name}:{password}", "type": "json" } ], "name": "GetAnalytic_Metric", "group": "Analytic_Metrics", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/analytics/metrics?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/analytics/metrics?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/analytics/metrics?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/analytics/metrics?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/analytics/metrics?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/analyticMetric/index.js", "groupTitle": "Analytic_Metrics" }, { "type": "get", "url": "/api/analytics/metrics/{id}", "title": "Gets a single Analytic Metrics", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/analytics/metrics/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowAnalytic_Metric", "group": "Analytic_Metrics", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/analyticMetric/index.js", "groupTitle": "Analytic_Metrics" }, { "type": "put", "url": "/api/analytics/metrics/{id}", "title": "Update an existing Analytic Metrics", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/analytics/metrics/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateAnalytic_Metric", "group": "Analytic_Metrics", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/analyticMetric/index.js", "groupTitle": "Analytic_Metrics" }, { "type": "post", "url": "/api/analytics/tree_reports", "title": "Creates a new Analytic Tree Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/analytics/tree_reports -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateAnalytic_Tree_Reports", "group": "Analytic_Tree_Reports", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "Text", "optional": false, "field": "tree", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/analyticTreeReport/index.js", "groupTitle": "Analytic_Tree_Reports" }, { "type": "delete", "url": "/api/analytics/tree_reports/{id}", "title": "Deletes a Analytic Tree Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/analytics/tree_reports/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteAnalytic_Tree_Reports", "group": "Analytic_Tree_Reports", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/analyticTreeReport/index.js", "groupTitle": "Analytic_Tree_Reports" }, { "type": "get", "url": "/api/analytics/tree_reports", "title": "Gets a list of Analytic Tree Reports", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/analytics/tree_reports -v -u {name}:{password}", "type": "json" } ], "name": "GetAnalytic_Tree_Reports", "group": "Analytic_Tree_Reports", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/analytics/tree_reports?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/analytics/tree_reports?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/analytics/tree_reports?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/analytics/tree_reports?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/analytics/tree_reports?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/analyticTreeReport/index.js", "groupTitle": "Analytic_Tree_Reports" }, { "type": "get", "url": "/api/analytics/tree_reports/{id}", "title": "Gets a single Analytic Tree Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/analytics/tree_reports/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowAnalytic_Tree_Reports", "group": "Analytic_Tree_Reports", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/analyticTreeReport/index.js", "groupTitle": "Analytic_Tree_Reports" }, { "type": "put", "url": "/api/analytics/tree_reports/{id}", "title": "Update an existing Analytic Tree Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/analytics/tree_reports/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateAnalytic_Tree_Reports", "group": "Analytic_Tree_Reports", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/analyticTreeReport/index.js", "groupTitle": "Analytic_Tree_Reports" }, { "type": "delete", "url": "/api/attachments/{id}", "title": "Deletes a Attachment", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/attachments/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteAttachments", "group": "Attachments", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/attachment/index.js", "groupTitle": "Attachments" }, { "type": "get", "url": "/api/attachments", "title": "Gets a list of Attachments", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/attachments -v -u {name}:{password}", "type": "json" } ], "name": "GetAttachments", "group": "Attachments", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/attachments?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/attachments?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/attachments?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/attachments?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/attachments?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/attachment/index.js", "groupTitle": "Attachments" }, { "type": "get", "url": "/api/attachments/{id}", "title": "Gets a single Attachment", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/attachments/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowAttachments", "group": "Attachments", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/attachment/index.js", "groupTitle": "Attachments" }, { "type": "post", "url": "/api/attachments", "title": "Add attachment", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/attachments -H 'Content-Type: multipart/form-data' -F 'file=@{filename}' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "create", "group": "Attachments", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/attachment/index.js", "groupTitle": "Attachments" }, { "type": "get", "url": "/api/attachments/:id/download", "title": "Download attachment", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/attachments/:id/download -v -u {name}:{password} -X GET", "type": "json" } ], "name": "download", "group": "Attachments", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/attachment/index.js", "groupTitle": "Attachments" }, { "type": "get", "url": "/api/chat/interactions/{id}/attachment_download", "title": "Download attachment", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/interactions/{id}/attachment_download -v -u {name}:{password} -X GET", "type": "json" } ], "name": "show", "group": "Attachments", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatInteraction/index.js", "groupTitle": "Attachments" }, { "type": "put", "url": "/api/attachments/{id}", "title": "Update an existing Attachment", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/attachments/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateAttachments", "group": "Attachments", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/attachment/index.js", "groupTitle": "Attachments" }, { "type": "post", "url": "/api/auth/local/forgot", "title": "Creates a new password reset token", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/auth/local/forgot -d '{\"email\": \"john.doe@xcally.com\"}' \\\n -H \"Content-Type: application/json\" -X POST", "type": "json" } ], "name": "Local_Forgot_Password", "group": "Authentication", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "email", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/authLocal/index.js", "groupTitle": "Authentication" }, { "type": "post", "url": "/api/auth/local/reset/:token", "title": "Reset user password", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/auth/local/reset/94b422c1fkdjhg766a198da6997yu6gcc963641d -d '{\"password\": \"My_newP@ssw0rd\"}' \\\n -H \"Content-Type: application/json\" -X POST", "type": "json" } ], "name": "Local_Reset_Password", "group": "Authentication", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "password", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/authLocal/index.js", "groupTitle": "Authentication" }, { "type": "post", "url": "/api/auth/local", "title": "Creates a new User token", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/auth/local -d '{\"name\": \"john.doe\", \"password\": \"password\"}' \\\n -H \"Content-Type: application/json\" -X POST", "type": "json" } ], "name": "Local_login", "group": "Authentication", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "password", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/authLocal/index.js", "groupTitle": "Authentication" }, { "type": "post", "url": "/api/auth/google", "title": "Creates a new User token", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/auth/google -d '{\"name\": \"john.doe\", \"password\": \"password\"}' \\\n -H \"Content-Type: application/json\" -X POST", "type": "json" } ], "name": "Local_login", "group": "Authentication", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "password", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/authGoogle/index.js", "groupTitle": "Authentication" }, { "type": "post", "url": "/api/automations", "title": "Creates a new Automation", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/automations -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateAutomations", "group": "Automations", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "channel", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "status", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "timeout", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/automation/index.js", "groupTitle": "Automations" }, { "type": "delete", "url": "/api/automations/{id}", "title": "Deletes a Automation", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/automations/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteAutomations", "group": "Automations", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/automation/index.js", "groupTitle": "Automations" }, { "type": "get", "url": "/api/automations", "title": "Gets a list of Automations", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/automations -v -u {name}:{password}", "type": "json" } ], "name": "GetAutomations", "group": "Automations", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/automations?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/automations?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/automations?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/automations?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/automations?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/automation/index.js", "groupTitle": "Automations" }, { "type": "get", "url": "/api/automations/{id}", "title": "Gets a single Automation", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/automations/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowAutomations", "group": "Automations", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/automation/index.js", "groupTitle": "Automations" }, { "type": "post", "url": "/api/automations/{id}/actions", "title": "Creates new actions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/automations/{id}/actions -d '[{\"firstName\": \"John Doe\", \"email\": \"john.doe@xcally.com\", \"...\": \"...\"}]' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addActions", "group": "Automations", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "Virtual", "optional": true, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "action", "description": "

Allowed values: contactManager, integration, motionbar, jscripty, urlForward, browser

" }, { "group": "Body", "type": "String", "optional": true, "field": "data1", "description": "

contactManager[ListId], integration[intName(zendesk)], motionbar[Popup(0),URL(1),WinApp(2)], urlForward[GET,POST], browser[TemplateId(0),URL(1)]

" }, { "group": "Body", "type": "String", "optional": true, "field": "data2", "description": "

integration[AccountId], motionbar[TemplateId,URL,WinAppPath], urlForward[URL]

" }, { "group": "Body", "type": "String", "optional": true, "field": "data3", "description": "

motionbar[NULL,NULL,WinAppArguments]

" }, { "group": "Body", "type": "String", "optional": true, "field": "data4", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "data5", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "data6", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/automation/index.js", "groupTitle": "Automations" }, { "type": "post", "url": "/api/automations/{id}/conditions", "title": "Creates new conditions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/automations/{id}/conditions -d '[{\"firstName\": \"John Doe\", \"email\": \"john.doe@xcally.com\", \"...\": \"...\"}]' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addConditions", "group": "Automations", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "Virtual", "optional": true, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "field", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "operator", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "value", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/automation/index.js", "groupTitle": "Automations" }, { "type": "get", "url": "/api/automations/{id}/actions", "title": "Gets Automation Actions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/automations/{id}/actions -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getActions", "group": "Automations", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/automation/index.js", "groupTitle": "Automations" }, { "type": "get", "url": "/api/automations/{id}/conditions", "title": "Gets Automation Conditions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/automations/{id}/conditions -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getConditions", "group": "Automations", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/automation/index.js", "groupTitle": "Automations" }, { "type": "put", "url": "/api/automations/{id}", "title": "Update an existing Automation", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/automations/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateAutomations", "group": "Automations", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/automation/index.js", "groupTitle": "Automations" }, { "type": "post", "url": "/api/canned_answers", "title": "Create a new canned answer", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/canned_answers -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "Create", "group": "Canned_Answers", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cannedAnswer/index.js", "groupTitle": "Canned_Answers" }, { "type": "delete", "url": "/api/canned_answers/{id}", "title": "Deletes a Canned Answer", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/canned_answers/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteCanned_Answers", "group": "Canned_Answers", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cannedAnswer/index.js", "groupTitle": "Canned_Answers" }, { "type": "get", "url": "/api/canned_answers", "title": "Gets a list of Canned Answers", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/canned_answers -v -u {name}:{password}", "type": "json" } ], "name": "GetCanned_Answers", "group": "Canned_Answers", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/canned_answers?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/canned_answers?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/canned_answers?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/canned_answers?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/canned_answers?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/cannedAnswer/index.js", "groupTitle": "Canned_Answers" }, { "type": "get", "url": "/api/canned_answers/{id}", "title": "Gets a single Canned Answer", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/canned_answers/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowCanned_Answers", "group": "Canned_Answers", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cannedAnswer/index.js", "groupTitle": "Canned_Answers" }, { "type": "put", "url": "/api/canned_answers/{id}", "title": "Update an existing Canned Answer", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/canned_answers/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateCanned_Answers", "group": "Canned_Answers", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cannedAnswer/index.js", "groupTitle": "Canned_Answers" }, { "type": "delete", "url": "/api/chat/applications/{id}", "title": "Deletes a Application", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/applications/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteApplications", "group": "Chat_Applications", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatApplication/index.js", "groupTitle": "Chat_Applications" }, { "type": "get", "url": "/api/chat/applications/{id}", "title": "Gets a single Application", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/applications/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowApplications", "group": "Chat_Applications", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatApplication/index.js", "groupTitle": "Chat_Applications" }, { "type": "put", "url": "/api/chat/applications/{id}", "title": "Update an existing Application", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/applications/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateApplications", "group": "Chat_Applications", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatApplication/index.js", "groupTitle": "Chat_Applications" }, { "type": "post", "url": "/api/chat/dispositions", "title": "Creates a new Disposition", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/dispositions -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateDispositions", "group": "Chat_Dispositions", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "name", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatDisposition/index.js", "groupTitle": "Chat_Dispositions" }, { "type": "delete", "url": "/api/chat/dispositions/{id}", "title": "Deletes a Disposition", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/dispositions/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteDispositions", "group": "Chat_Dispositions", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatDisposition/index.js", "groupTitle": "Chat_Dispositions" }, { "type": "get", "url": "/api/chat/dispositions/{id}", "title": "Gets a single Disposition", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/dispositions/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowDispositions", "group": "Chat_Dispositions", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatDisposition/index.js", "groupTitle": "Chat_Dispositions" }, { "type": "put", "url": "/api/chat/dispositions/{id}", "title": "Update an existing Disposition", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/dispositions/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateDispositions", "group": "Chat_Dispositions", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatDisposition/index.js", "groupTitle": "Chat_Dispositions" }, { "type": "post", "url": "/api/chat/groups", "title": "Creates a new Group", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/groups -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateGroups", "group": "Chat_Groups", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "write", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatGroup/index.js", "groupTitle": "Chat_Groups" }, { "type": "delete", "url": "/api/chat/groups/{id}", "title": "Deletes a Group", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/groups/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteGroups", "group": "Chat_Groups", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatGroup/index.js", "groupTitle": "Chat_Groups" }, { "type": "get", "url": "/api/chat/groups/describe", "title": "Gets table info about Groups", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/groups/describe -v -u {name}:{password}", "type": "json" } ], "name": "DescribeGroups", "group": "Chat_Groups", "description": "

Motion will return a HTTP status code 200 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatGroup/index.js", "groupTitle": "Chat_Groups" }, { "type": "get", "url": "/api/chat/groups", "title": "Gets a list of Groups", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/groups -v -u {name}:{password}", "type": "json" } ], "name": "GetGroups", "group": "Chat_Groups", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/chat/groups?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/chat/groups?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/chat/groups?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/chat/groups?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/chat/groups?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/chatGroup/index.js", "groupTitle": "Chat_Groups" }, { "type": "delete", "url": "/api/chat/groups/{id}/members", "title": "Removes members from a group", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/groups/{id}/members?ids=1&ids=2 -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "RemoveMembers", "group": "Chat_Groups", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatGroup/index.js", "groupTitle": "Chat_Groups" }, { "type": "get", "url": "/api/chat/groups/{id}", "title": "Gets a single Group", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/groups/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowGroups", "group": "Chat_Groups", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatGroup/index.js", "groupTitle": "Chat_Groups" }, { "type": "post", "url": "/api/chat/groups/{id}/members", "title": "Add members to chat group", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/groups/{id}/members -d '{\"ids\": [1,2]}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addMembers", "group": "Chat_Groups", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatGroup/index.js", "groupTitle": "Chat_Groups" }, { "type": "post", "url": "/api/chat/groups/{id}/messages", "title": "Creates a new group message", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/groups/{id}/messages -d '{\"body\": \"Hi operator!\"}' -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addMessage", "group": "Chat_Groups", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatGroup/index.js", "groupTitle": "Chat_Groups" }, { "type": "get", "url": "/api/chat/groups/{id}/members", "title": "Gets Members", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/groups/{id}/members -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getMembers", "group": "Chat_Groups", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatGroup/index.js", "groupTitle": "Chat_Groups" }, { "type": "get", "url": "/api/chat/groups/{id}/messages", "title": "Gets Messages", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/groups/{id}/messages -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getMessages", "group": "Chat_Groups", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatGroup/index.js", "groupTitle": "Chat_Groups" }, { "type": "get", "url": "/api/chat/groups/{id}/unread", "title": "Get unread chat group messages", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/groups/{id}/unread -H 'Content-Type: application/json' -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getUread", "group": "Chat_Groups", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatGroup/index.js", "groupTitle": "Chat_Groups" }, { "type": "put", "url": "/api/chat/groups/{id}", "title": "Update an existing Group", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/groups/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateGroups", "group": "Chat_Groups", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatGroup/index.js", "groupTitle": "Chat_Groups" }, { "type": "post", "url": "/api/chat/interactions/{id}/tags", "title": "Add tags to the interaction", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/interaction/{id}/tags -d '{\"ids\": [1,2]}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "AddTags", "group": "Chat_Interactions", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatInteraction/index.js", "groupTitle": "Chat_Interactions" }, { "type": "post", "url": "/api/chat/interactions", "title": "Creates a new Interaction", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/interactions -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateInteractions", "group": "Chat_Interactions", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "Boolean", "optional": true, "field": "closed", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "ratingValue", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"star\"", "\"thumb\"" ], "optional": true, "field": "ratingType", "description": "" }, { "group": "Body", "type": "Text", "optional": true, "field": "ratingMessage", "description": "" }, { "group": "Body", "type": "Text", "optional": true, "field": "pathTranscript", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "mailTranscript", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "closedAt", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "disposition", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "note", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "browserName", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "browserVersion", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "osName", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "osVersion", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "deviceModel", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "deviceVendor", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "deviceType", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "referer", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "customerIp", "description": "" }, { "group": "Body", "type": "Text", "optional": true, "field": "formData", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "read1stAt", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "lastMsgAt", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"in\"", "\"out\"" ], "optional": false, "field": "lastMsgDirection", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatInteraction/index.js", "groupTitle": "Chat_Interactions" }, { "type": "delete", "url": "/api/chat/interactions/{id}", "title": "Deletes a Interaction", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/interactions/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteInteractions", "group": "Chat_Interactions", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatInteraction/index.js", "groupTitle": "Chat_Interactions" }, { "type": "get", "url": "/api/chat/interactions/describe", "title": "Gets table info about Interactions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/interactions/describe -v -u {name}:{password}", "type": "json" } ], "name": "DescribeInteractions", "group": "Chat_Interactions", "description": "

Motion will return a HTTP status code 200 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatInteraction/index.js", "groupTitle": "Chat_Interactions" }, { "type": "get", "url": "/api/chat/interactions", "title": "Gets a list of Interactions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/interactions -v -u {name}:{password}", "type": "json" } ], "name": "GetInteractions", "group": "Chat_Interactions", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/chat/interactions?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/chat/interactions?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/chat/interactions?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/chat/interactions?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/chat/interactions?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/chatInteraction/index.js", "groupTitle": "Chat_Interactions" }, { "type": "delete", "url": "/api/chat/interactions/{id}/tags", "title": "Removes tags from interaction", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/interactions/{id}/tags?ids=1&ids=2 -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "RemoveTags", "group": "Chat_Interactions", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatInteraction/index.js", "groupTitle": "Chat_Interactions" }, { "type": "get", "url": "/api/chat/interactions/{id}", "title": "Gets a single Interaction", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/interactions/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowInteractions", "group": "Chat_Interactions", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatInteraction/index.js", "groupTitle": "Chat_Interactions" }, { "type": "put", "url": "/api/chat/interactions/{id}/abandon", "title": "Abandon interaction", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/interactions/{id}/abandon -d '{\"channel\": \"chat\", \"...\": \"...\"}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "abandon", "group": "Chat_Interactions", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

This API is used to set as abandon an interaction and stop the routing.

", "version": "0.0.0", "filename": "server/api/chatInteraction/index.js", "groupTitle": "Chat_Interactions" }, { "type": "post", "url": "/api/chat/interactions/{id}/messages", "title": "Creates new messages", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/interactions/{id}/messages -d '[{\"to\": \"+3901119886500\", \"...\": \"...\"}]' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addMessage", "group": "Chat_Interactions", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "Text", "optional": false, "field": "body", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "read", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "secret", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"in\"", "\"out\"" ], "optional": false, "field": "direction", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "readAt", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatInteraction/index.js", "groupTitle": "Chat_Interactions" }, { "type": "put", "url": "/api/chat/interactions/{id}/close", "title": "Close Interaction", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/interactions/{id}/close -d '[{\"to\": \"+3901119886500\", \"...\": \"...\"}]' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addMessage", "group": "Chat_Interactions", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatInteraction/index.js", "groupTitle": "Chat_Interactions" }, { "type": "post", "url": "/api/chat/interactions/{id}/attachment_upload", "title": "Add attachment", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/interactions/{id}/attachment_upload -H 'Content-Type: multipart/form-data' -F 'file=@{filename}' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "attachmentUpload", "group": "Chat_Interactions", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatInteraction/index.js", "groupTitle": "Chat_Interactions" }, { "type": "get", "url": "/api/chat/interactions/{id}/messages", "title": "Gets interaction messages", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/interactions/{id}/messages -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getMessages", "group": "Chat_Interactions", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatInteraction/index.js", "groupTitle": "Chat_Interactions" }, { "type": "get", "url": "/api/chat/interactions/{id}/my_messages", "title": "Gets interaction messages", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/interactions/{id}/my_messages -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getMyMessages", "group": "Chat_Interactions", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatInteraction/index.js", "groupTitle": "Chat_Interactions" }, { "type": "put", "url": "/api/chat/interactions/{id}", "title": "Update an existing Interaction", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/interactions/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateInteractions", "group": "Chat_Interactions", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatInteraction/index.js", "groupTitle": "Chat_Interactions" }, { "type": "post", "url": "/api/chat/internal/messages", "title": "Creates a new Message", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/internal/messages -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateMessages", "group": "Chat_Internal_Messages", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "Text", "optional": false, "field": "body", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "read", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "ChatInternalMessageId", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatInternalMessage/index.js", "groupTitle": "Chat_Internal_Messages" }, { "type": "delete", "url": "/api/chat/internal/messages/{id}", "title": "Deletes a Message", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/internal/messages/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteMessages", "group": "Chat_Internal_Messages", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatInternalMessage/index.js", "groupTitle": "Chat_Internal_Messages" }, { "type": "get", "url": "/api/chat/internal/messages/describe", "title": "Gets table info about Messages", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/internal/messages/describe -v -u {name}:{password}", "type": "json" } ], "name": "DescribeMessages", "group": "Chat_Internal_Messages", "description": "

Motion will return a HTTP status code 200 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatInternalMessage/index.js", "groupTitle": "Chat_Internal_Messages" }, { "type": "get", "url": "/api/chat/internal/messages", "title": "Gets a list of Messages", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/internal/messages -v -u {name}:{password}", "type": "json" } ], "name": "GetMessages", "group": "Chat_Internal_Messages", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/chat/internal/messages?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/chat/internal/messages?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/chat/internal/messages?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/chat/internal/messages?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/chat/internal/messages?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/chatInternalMessage/index.js", "groupTitle": "Chat_Internal_Messages" }, { "type": "get", "url": "/api/chat/internal/messages/{id}", "title": "Gets a single Message", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/internal/messages/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowMessages", "group": "Chat_Internal_Messages", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatInternalMessage/index.js", "groupTitle": "Chat_Internal_Messages" }, { "type": "put", "url": "/api/chat/internal/messages/{id}", "title": "Update an existing Message", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/internal/messages/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateMessages", "group": "Chat_Internal_Messages", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatInternalMessage/index.js", "groupTitle": "Chat_Internal_Messages" }, { "type": "post", "url": "/api/chat/messages", "title": "Creates a new Message", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/messages -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateMessages", "group": "Chat_Messages", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "Text", "optional": false, "field": "body", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "read", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "secret", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"in\"", "\"out\"" ], "optional": false, "field": "direction", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "readAt", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatMessage/index.js", "groupTitle": "Chat_Messages" }, { "type": "delete", "url": "/api/chat/messages/{id}", "title": "Deletes a Message", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/messages/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteMessages", "group": "Chat_Messages", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatMessage/index.js", "groupTitle": "Chat_Messages" }, { "type": "get", "url": "/api/chat/messages/describe", "title": "Gets table info about Messages", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/messages/describe -v -u {name}:{password}", "type": "json" } ], "name": "DescribeMessages", "group": "Chat_Messages", "description": "

Motion will return a HTTP status code 200 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatMessage/index.js", "groupTitle": "Chat_Messages" }, { "type": "get", "url": "/api/chat/messages", "title": "Gets a list of Messages", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/messages -v -u {name}:{password}", "type": "json" } ], "name": "GetMessages", "group": "Chat_Messages", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/chat/messages?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/chat/messages?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/chat/messages?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/chat/messages?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/chat/messages?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/chatMessage/index.js", "groupTitle": "Chat_Messages" }, { "type": "get", "url": "/api/chat/messages/{id}", "title": "Gets a single Message", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/messages/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowMessages", "group": "Chat_Messages", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatMessage/index.js", "groupTitle": "Chat_Messages" }, { "type": "put", "url": "/api/chat/messages/{id}", "title": "Update an existing Message", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/messages/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateMessages", "group": "Chat_Messages", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatMessage/index.js", "groupTitle": "Chat_Messages" }, { "type": "post", "url": "/api/chat/offline_messages", "title": "Creates a new OfflineMessage", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/offline_messages -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateOfflineMessages", "group": "Chat_Offline_Messages", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "Text", "optional": false, "field": "body", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatOfflineMessage/index.js", "groupTitle": "Chat_Offline_Messages" }, { "type": "delete", "url": "/api/chat/offline_messages/{id}", "title": "Deletes a OfflineMessage", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/offline_messages/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteOfflineMessages", "group": "Chat_Offline_Messages", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatOfflineMessage/index.js", "groupTitle": "Chat_Offline_Messages" }, { "type": "get", "url": "/api/chat/offline_messages/describe", "title": "Gets table info about OfflineMessages", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/offline_messages/describe -v -u {name}:{password}", "type": "json" } ], "name": "DescribeOfflineMessages", "group": "Chat_Offline_Messages", "description": "

Motion will return a HTTP status code 200 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatOfflineMessage/index.js", "groupTitle": "Chat_Offline_Messages" }, { "type": "get", "url": "/api/chat/offline_messages", "title": "Gets a list of OfflineMessages", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/offline_messages -v -u {name}:{password}", "type": "json" } ], "name": "GetOfflineMessages", "group": "Chat_Offline_Messages", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/chat/offline_messages?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/chat/offline_messages?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/chat/offline_messages?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/chat/offline_messages?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/chat/offline_messages?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/chatOfflineMessage/index.js", "groupTitle": "Chat_Offline_Messages" }, { "type": "get", "url": "/api/chat/offline_messages/{id}", "title": "Gets a single OfflineMessage", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/offline_messages/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowOfflineMessages", "group": "Chat_Offline_Messages", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatOfflineMessage/index.js", "groupTitle": "Chat_Offline_Messages" }, { "type": "put", "url": "/api/chat/offline_messages/{id}", "title": "Update an existing OfflineMessage", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/offline_messages/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateOfflineMessages", "group": "Chat_Offline_Messages", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatOfflineMessage/index.js", "groupTitle": "Chat_Offline_Messages" }, { "type": "post", "url": "/api/chat/proactive_actions", "title": "Creates a new Proactive Action", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/proactive_actions -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateProactive_Actions", "group": "Chat_Proactive_Actions", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "name", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"mouseOver\"", "\"timeout\"" ], "optional": true, "field": "type", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "selector", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "timeout", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatProactiveAction/index.js", "groupTitle": "Chat_Proactive_Actions" }, { "type": "delete", "url": "/api/chat/proactive_actions/{id}", "title": "Deletes a Proactive Action", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/proactive_actions/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteProactive_Actions", "group": "Chat_Proactive_Actions", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatProactiveAction/index.js", "groupTitle": "Chat_Proactive_Actions" }, { "type": "get", "url": "/api/chat/proactive_actions/{id}", "title": "Gets a single Proactive Action", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/proactive_actions/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowProactive_Actions", "group": "Chat_Proactive_Actions", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatProactiveAction/index.js", "groupTitle": "Chat_Proactive_Actions" }, { "type": "put", "url": "/api/chat/proactive_actions/{id}", "title": "Update an existing Proactive Action", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/proactive_actions/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateProactive_Actions", "group": "Chat_Proactive_Actions", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatProactiveAction/index.js", "groupTitle": "Chat_Proactive_Actions" }, { "type": "post", "url": "/api/chat/reports/queue", "title": "Creates a new Chat Queue Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/reports/queue -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateChat_Queue_Reports", "group": "Chat_Queue_Reports", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "uniqueid", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "from", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "joinAt", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "leaveAt", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "acceptAt", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "exitAt", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "reason", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatQueueReport/index.js", "groupTitle": "Chat_Queue_Reports" }, { "type": "delete", "url": "/api/chat/reports/queue/{id}", "title": "Deletes a Chat Queue Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/reports/queue/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteChat_Queue_Reports", "group": "Chat_Queue_Reports", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatQueueReport/index.js", "groupTitle": "Chat_Queue_Reports" }, { "type": "get", "url": "/api/chat/reports/queue/describe", "title": "Gets table info about Chat Queue Reports", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/reports/queue/describe -v -u {name}:{password}", "type": "json" } ], "name": "DescribeChat_Queue_Reports", "group": "Chat_Queue_Reports", "description": "

Motion will return a HTTP status code 200 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatQueueReport/index.js", "groupTitle": "Chat_Queue_Reports" }, { "type": "get", "url": "/api/chat/reports/queue", "title": "Gets a list of Chat Queue Reports", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/reports/queue -v -u {name}:{password}", "type": "json" } ], "name": "GetChat_Queue_Reports", "group": "Chat_Queue_Reports", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/chat/reports/queue?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/chat/reports/queue?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/chat/reports/queue?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/chat/reports/queue?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/chat/reports/queue?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/chatQueueReport/index.js", "groupTitle": "Chat_Queue_Reports" }, { "type": "get", "url": "/api/chat/reports/queue/{id}", "title": "Gets a single Chat Queue Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/reports/queue/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowChat_Queue_Reports", "group": "Chat_Queue_Reports", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatQueueReport/index.js", "groupTitle": "Chat_Queue_Reports" }, { "type": "put", "url": "/api/chat/reports/queue/{id}", "title": "Update an existing Chat Queue Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/reports/queue/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateChat_Queue_Reports", "group": "Chat_Queue_Reports", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatQueueReport/index.js", "groupTitle": "Chat_Queue_Reports" }, { "type": "post", "url": "/api/chat/queues/{id}/users", "title": "Add agents to a queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/queues/{id}/users -d '{\"ids\": [1,2], \"penalty\": 2}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "AddAgents", "group": "Chat_Queues", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatQueue/index.js", "groupTitle": "Chat_Queues" }, { "type": "post", "url": "/api/chat/queues/{id}/teams", "title": "Add teams to a queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/queues/{id}/teams -d '{\"ids\": [1,2]}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "AddTeams", "group": "Chat_Queues", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatQueue/index.js", "groupTitle": "Chat_Queues" }, { "type": "post", "url": "/api/chat/queues", "title": "Creates a new Queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/queues -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateQueues", "group": "Chat_Queues", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "timeout", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"rrmemory\"", "\"beepall\"", "\"roundrobin\"" ], "optional": true, "field": "strategy", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatQueue/index.js", "groupTitle": "Chat_Queues" }, { "type": "delete", "url": "/api/chat/queues/{id}", "title": "Deletes a Queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/queues/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteQueues", "group": "Chat_Queues", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatQueue/index.js", "groupTitle": "Chat_Queues" }, { "type": "get", "url": "/api/chat/queues/describe", "title": "Gets table info about Queues", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/queues/describe -v -u {name}:{password}", "type": "json" } ], "name": "DescribeQueues", "group": "Chat_Queues", "description": "

Motion will return a HTTP status code 200 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatQueue/index.js", "groupTitle": "Chat_Queues" }, { "type": "get", "url": "/api/chat/queues/{id}/users", "title": "Gets queue agents", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/queues/{id}/users -v -u {name}:{password} -X POST", "type": "json" } ], "name": "GetAgents", "group": "Chat_Queues", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatQueue/index.js", "groupTitle": "Chat_Queues" }, { "type": "get", "url": "/api/chat/queues/{id}/members", "title": "GetMembers", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/queues/{id}/members -v -u {name}:{password}", "type": "json" } ], "name": "GetMembers", "group": "Chat_Queues", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatQueue/index.js", "groupTitle": "Chat_Queues" }, { "type": "get", "url": "/api/chat/queues", "title": "Gets a list of Queues", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/queues -v -u {name}:{password}", "type": "json" } ], "name": "GetQueues", "group": "Chat_Queues", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/chat/queues?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/chat/queues?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/chat/queues?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/chat/queues?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/chat/queues?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/chatQueue/index.js", "groupTitle": "Chat_Queues" }, { "type": "get", "url": "/api/chat/queues/{id}/teams", "title": "Gets queues list", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/queues/{id}/teams -v -u {name}:{password}", "type": "json" } ], "name": "GetTeams", "group": "Chat_Queues", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatQueue/index.js", "groupTitle": "Chat_Queues" }, { "type": "delete", "url": "/api/chat/queues/{id}/users", "title": "Removes agents from a queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/queues/{id}/users?ids=1&ids=2 -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "RemoveAgents", "group": "Chat_Queues", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatQueue/index.js", "groupTitle": "Chat_Queues" }, { "type": "get", "url": "/api/chat/queues/{id}", "title": "Gets a single Queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/queues/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowQueues", "group": "Chat_Queues", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatQueue/index.js", "groupTitle": "Chat_Queues" }, { "type": "put", "url": "/api/chat/queues/{id}", "title": "Update an existing Queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/queues/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateQueues", "group": "Chat_Queues", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatQueue/index.js", "groupTitle": "Chat_Queues" }, { "type": "post", "url": "/api/chat/websites", "title": "Creates a new Website", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/websites -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateWebsites", "group": "Chat_Websites", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "address", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "mapKey", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "mapKeyOffline", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "key", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "agentAlias", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "color", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "color_button", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "textColor", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "fontSize", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "remote", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "animation", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"rounded\"", "\"squared\"" ], "optional": true, "field": "header_shape", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "header_online", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "start_chat_button", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "offline_chat_button", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "header_offline", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "download_transcript", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "timeout", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "whiteLabel", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "defaultWhiteLabel", "description": "" }, { "group": "Body", "type": "Text", "optional": true, "field": "sitepic", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "closingQuestion", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "formSubmitSuccessMessage", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "formSubmitFailureMessage", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "noteTitle", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "placeholderMessage", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "closingMessage", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "closingMessageButton", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "skipMessageButton", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "conditionAgreement", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "enableRating", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "enableFeedback", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"star\"", "\"thumb\"" ], "optional": true, "field": "ratingType", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "ratingStarsNumber", "description": "" }, { "group": "Body", "type": "Text", "optional": true, "field": "onlineForm", "description": "" }, { "group": "Body", "type": "Text", "optional": true, "field": "offlineForm", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "token", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "autoclose", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "enableCustomerWriting", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "forwardTranscript", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "forwardTranscriptMessage", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "forwardOffline", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "forwardOfflineAddress", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "waitingTitle", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "waitingMessage", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "offlineMessageSubject", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "offlineMessageBody", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "enableUnmanagedNote", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "unmanagedMessage", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "skipUnmanaged", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "sendUnmanaged", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "enableCustomerAttachment", "description": "" }, { "group": "Body", "type": "Text", "optional": true, "field": "agentAvatar", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "showAgentAvatar", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "timezone", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatWebsite/index.js", "groupTitle": "Chat_Websites" }, { "type": "delete", "url": "/api/chat/websites/{id}", "title": "Deletes a Website", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/websites/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteWebsites", "group": "Chat_Websites", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatWebsite/index.js", "groupTitle": "Chat_Websites" }, { "type": "get", "url": "/api/chat/websites/describe", "title": "Gets table info about Websites", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/websites/describe -v -u {name}:{password}", "type": "json" } ], "name": "DescribeWebsites", "group": "Chat_Websites", "description": "

Motion will return a HTTP status code 200 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatWebsite/index.js", "groupTitle": "Chat_Websites" }, { "type": "get", "url": "/api/chat/websites", "title": "Gets a list of Websites", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/websites -v -u {name}:{password}", "type": "json" } ], "name": "GetWebsites", "group": "Chat_Websites", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/chat/websites?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/chat/websites?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/chat/websites?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/chat/websites?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/chat/websites?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/chatWebsite/index.js", "groupTitle": "Chat_Websites" }, { "type": "delete", "url": "/api/openchannel/accounts/{id}/canned_answers", "title": "Removes canned answers from account", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/accounts/{id}/canned_answers?ids=1&ids=2 -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "RemoveAnswers", "group": "Chat_Websites", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatWebsite/index.js", "groupTitle": "Chat_Websites" }, { "type": "get", "url": "/api/chat/websites/{id}", "title": "Gets a single Website", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/websites/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowWebsites", "group": "Chat_Websites", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatWebsite/index.js", "groupTitle": "Chat_Websites" }, { "type": "put", "url": "/api/chat/messages/{id}/accept", "title": "Accepts message", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/messages/{id}/accept \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "acceptMessage", "group": "Chat_Websites", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatMessage/index.js", "groupTitle": "Chat_Websites" }, { "type": "post", "url": "/api/chat/websites/{id}/canned_answers", "title": "Creates new canned answer", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/websites/{id}/canned_answers -d '{\"name\": \"vip\"}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addAnswer", "group": "Chat_Websites", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "key", "description": "" }, { "group": "Body", "type": "Text", "optional": false, "field": "value", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatWebsite/index.js", "groupTitle": "Chat_Websites" }, { "type": "post", "url": "/api/chat/websites/{id}/applications", "title": "Creates new applications", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/websites/{id}/applications -d '[{\"app\": \"queue\", \"...\": \"...\"}]' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addApplications", "group": "Chat_Websites", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "Integer", "optional": false, "field": "priority", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "app", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "appdata", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "interval", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatWebsite/index.js", "groupTitle": "Chat_Websites" }, { "type": "post", "url": "/api/chat/websites/{id}/avatar", "title": "Add avatar", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/websites/{id}/avatar -H 'Content-Type: multipart/form-data' -F 'file=@{filename}' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addAvatar", "group": "Chat_Websites", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatWebsite/index.js", "groupTitle": "Chat_Websites" }, { "type": "post", "url": "/api/chat/websites/{id}/dispositions", "title": "Creates new disposition", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/websites/{id}/dispositions -d '{\"name\": \"Satisfied\"}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addDisposition", "group": "Chat_Websites", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "name", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatWebsite/index.js", "groupTitle": "Chat_Websites" }, { "type": "post", "url": "/api/chat/websites/{id}/dispositions", "title": "Creates many dispositions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/websites/{id}/dispositions -d '[{\"name\": \"Satisfied\"}]' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addDispositions", "group": "Chat_Websites", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "name", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatWebsite/index.js", "groupTitle": "Chat_Websites" }, { "type": "post", "url": "/api/chat/accounts/{id}/interactions", "title": "Creates new interactions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/websites/{id}/interactions -d '{\"host\": \"host\", \"username\": \"username\", \"password\": \"password\", \"...\": \"...\"}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addInteraction", "group": "Chat_Websites", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "Boolean", "optional": true, "field": "closed", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "ratingValue", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"star\"", "\"thumb\"" ], "optional": true, "field": "ratingType", "description": "" }, { "group": "Body", "type": "Text", "optional": true, "field": "ratingMessage", "description": "" }, { "group": "Body", "type": "Text", "optional": true, "field": "pathTranscript", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "mailTranscript", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "closedAt", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "disposition", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "note", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "browserName", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "browserVersion", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "osName", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "osVersion", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "deviceModel", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "deviceVendor", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "deviceType", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "referer", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "customerIp", "description": "" }, { "group": "Body", "type": "Text", "optional": true, "field": "formData", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "read1stAt", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "lastMsgAt", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"in\"", "\"out\"" ], "optional": false, "field": "lastMsgDirection", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatWebsite/index.js", "groupTitle": "Chat_Websites" }, { "type": "post", "url": "/api/chat/websites/{id}/logo", "title": "Add logo", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/websites/{id}/logo -H 'Content-Type: multipart/form-data' -F 'file=@{filename}' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addLogo", "group": "Chat_Websites", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatWebsite/index.js", "groupTitle": "Chat_Websites" }, { "type": "post", "url": "/api/chat/websites/{id}/proactive_actions", "title": "Creates new Proactive Actions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/websites/{id}/proactive_actions -d '[{\"name\": \"Satisfied\"}]' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addProactiveActions", "group": "Chat_Websites", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "name", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"mouseOver\"", "\"timeout\"" ], "optional": true, "field": "type", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "selector", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "timeout", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatWebsite/index.js", "groupTitle": "Chat_Websites" }, { "type": "get", "url": "/api/chat/websites/{id}/canned_answers", "title": "Gets account canned answers", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/websites/{id}/canned_answers -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getAnswers", "group": "Chat_Websites", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatWebsite/index.js", "groupTitle": "Chat_Websites" }, { "type": "get", "url": "/api/chat/websites/{id}/applications", "title": "Gets Website Applications", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/websites/{id}/applications -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getApplications", "group": "Chat_Websites", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatWebsite/index.js", "groupTitle": "Chat_Websites" }, { "type": "get", "url": "/api/chat/websites/{id}/avatar", "title": "Get avatar", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/websites/{id}/avatar -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getAvatar", "group": "Chat_Websites", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatWebsite/index.js", "groupTitle": "Chat_Websites" }, { "type": "get", "url": "/api/chat/websites/{id}/dispositions", "title": "Gets Website Dispositions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/websites/{id}/dispositions -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getDispositions", "group": "Chat_Websites", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatWebsite/index.js", "groupTitle": "Chat_Websites" }, { "type": "get", "url": "/api/chat/websites/{id}/fields", "title": "Gets Website Fields", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/websites/{id}/fields -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getFields", "group": "Chat_Websites", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatWebsite/index.js", "groupTitle": "Chat_Websites" }, { "type": "get", "url": "/api/chat/websites/{id}/interactions", "title": "Gets Website Interactions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/websites/{id}/interactions -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getInteraction", "group": "Chat_Websites", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatWebsite/index.js", "groupTitle": "Chat_Websites" }, { "type": "get", "url": "/api/chat/websites/{id}/logo", "title": "Get logo", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/websites/{id}/logo -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getLogo", "group": "Chat_Websites", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatWebsite/index.js", "groupTitle": "Chat_Websites" }, { "type": "get", "url": "/api/chat/websites/{id}/offline_messages", "title": "Gets Website Offline Messages", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/websites/{id}/offline_messages -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getOfflineMessages", "group": "Chat_Websites", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatWebsite/index.js", "groupTitle": "Chat_Websites" }, { "type": "get", "url": "/api/chat/websites/{id}/proactive_actions", "title": "Gets Website Proactive Actions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/websites/{id}/proactive_actions -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getProactiveActions", "group": "Chat_Websites", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatWebsite/index.js", "groupTitle": "Chat_Websites" }, { "type": "get", "url": "/api/chat/websites/{id}/snippet", "title": "Gets Website Snippet", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/websites/{id}/snippet -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getSnippet", "group": "Chat_Websites", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatWebsite/index.js", "groupTitle": "Chat_Websites" }, { "type": "post", "url": "/api/chat/websites/{id}/notify", "title": "Notify new message", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/websites/{id}/notify -d '{\"body\": \"hello world\", \"...\": \"...\"}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "notify", "group": "Chat_Websites", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

This API is used to create a new chat message to be sent to the system.

", "version": "0.0.0", "filename": "server/api/chatWebsite/index.js", "groupTitle": "Chat_Websites" }, { "type": "post", "url": "/api/chat/websites/{id}/offline", "title": "Offline message", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/websites/{id}/offline -d '{\"body\": \"hello world\", \"...\": \"...\"}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "offline", "group": "Chat_Websites", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatWebsite/index.js", "groupTitle": "Chat_Websites" }, { "type": "put", "url": "/api/chat/messages/{id}/reject", "title": "Rejects message", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/messages/{id}/reject \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "rejectMessage", "group": "Chat_Websites", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatMessage/index.js", "groupTitle": "Chat_Websites" }, { "type": "put", "url": "/api/chat/websites/{id}", "title": "Update an existing Website", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/websites/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateWebsites", "group": "Chat_Websites", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatWebsite/index.js", "groupTitle": "Chat_Websites" }, { "type": "post", "url": "/api/cm/companies", "title": "Creates a new Company", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/companies -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateCompanies", "group": "Cm_Companies", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "vat", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "companyId", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "website", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "phone", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "fax", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "type", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "street", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "postalCode", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "city", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "country", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "email", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "emailDomain", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "sStreet", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "sPostalCode", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "sCity", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "sCountry", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmCompany/index.js", "groupTitle": "Cm_Companies" }, { "type": "delete", "url": "/api/cm/companies/{id}", "title": "Deletes a Company", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/companies/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteCompanies", "group": "Cm_Companies", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmCompany/index.js", "groupTitle": "Cm_Companies" }, { "type": "get", "url": "/api/cm/companies", "title": "Gets a list of Companies", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/companies -v -u {name}:{password}", "type": "json" } ], "name": "GetCompanies", "group": "Cm_Companies", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/cm/companies?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/cm/companies?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/cm/companies?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/cm/companies?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/cm/companies?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/cmCompany/index.js", "groupTitle": "Cm_Companies" }, { "type": "get", "url": "/api/cm/companies/{id}", "title": "Gets a single Company", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/companies/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowCompanies", "group": "Cm_Companies", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmCompany/index.js", "groupTitle": "Cm_Companies" }, { "type": "post", "url": "/api/cm/companies/{id}/contacts", "title": "Creates new contacts", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/companies/{id}/contacts -d '[{\"firstName\": \"John Doe\", \"email\": \"john.doe@xcally.com\", \"...\": \"...\"}]' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addContacts", "group": "Cm_Companies", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "firstName", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "lastName", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "tags", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "street", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "postalCode", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "city", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "country", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "dateOfBirth", "description": "" }, { "group": "Body", "type": "Text", "optional": true, "field": "description", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "phone", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "mobile", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "fax", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "email", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "url", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "facebook", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "twitter", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmCompany/index.js", "groupTitle": "Cm_Companies" }, { "type": "get", "url": "/api/cm/companies/{id}/contacts", "title": "Gets List Contacts", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/companies/{id}/contacts -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getContacts", "group": "Cm_Companies", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmCompany/index.js", "groupTitle": "Cm_Companies" }, { "type": "put", "url": "/api/cm/companies/{id}", "title": "Update an existing Company", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/companies/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateCompanies", "group": "Cm_Companies", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmCompany/index.js", "groupTitle": "Cm_Companies" }, { "type": "delete", "url": "/api/cm/contacts/{id}", "title": "Deletes a Contact", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/contacts/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteContacts", "group": "Cm_Contacts", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmContact/index.js", "groupTitle": "Cm_Contacts" }, { "type": "get", "url": "/api/cm/contacts/describe", "title": "Gets table info about Contacts", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/contacts/describe -v -u {name}:{password}", "type": "json" } ], "name": "DescribeContacts", "group": "Cm_Contacts", "description": "

Motion will return a HTTP status code 200 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmContact/index.js", "groupTitle": "Cm_Contacts" }, { "type": "get", "url": "/api/cm/contacts/{id}/finals", "title": "Gets contact hopper finals", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/contacts/{id}/hopper_finals -v -u {name}:{password} -X GET", "type": "json" } ], "name": "GetHopperFinals", "group": "Cm_Contacts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmContact/index.js", "groupTitle": "Cm_Contacts" }, { "type": "get", "url": "/api/cm/contacts/{id}/hopper_histories", "title": "Gets contact hopper histories", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/contacts/{id}/hopper_histories -v -u {name}:{password} -X GET", "type": "json" } ], "name": "GetHopperHistories", "group": "Cm_Contacts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmContact/index.js", "groupTitle": "Cm_Contacts" }, { "type": "get", "url": "/api/cm/contacts/{id}/hoppers", "title": "Gets contact hoppers", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/contacts/{id}/hoppers -v -u {name}:{password} -X GET", "type": "json" } ], "name": "GetHoppers", "group": "Cm_Contacts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmContact/index.js", "groupTitle": "Cm_Contacts" }, { "type": "post", "url": "/api/cm/contacts", "title": "Create Contacts", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/contacts -d '[{\"firstName\": \"John\", \"lastName\": \"doe\", \"...\": \"...\"}]' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "create", "group": "Cm_Contacts", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmContact/index.js", "groupTitle": "Cm_Contacts" }, { "type": "post", "url": "/api/cm/contacts", "title": "Create Contact", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/contacts -d '{\"firstName\": \"John\", \"lastName\": \"doe\", \"...\": \"...\"}' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "create", "group": "Cm_Contacts", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmContact/index.js", "groupTitle": "Cm_Contacts" }, { "type": "get", "url": "/api/cm/contacts/{id}/jscripty_sessions", "title": "Gets contact hopper blacks", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/contacts/{id}/hopper_black -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getJscriptySessions", "group": "Cm_Contacts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmContact/index.js", "groupTitle": "Cm_Contacts" }, { "type": "get", "url": "/api/cm/contacts", "title": "Gets all the Contacts", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/contacts -v -u {name}:{password} -X GET", "type": "json" } ], "name": "index", "group": "Cm_Contacts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmContact/index.js", "groupTitle": "Cm_Contacts" }, { "type": "post", "url": "/api/cm/contacts/merge", "title": "Merge Contact", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/contacts/merge -d '{\"ids\": [1, 2, 3]}' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "merge", "group": "Cm_Contacts", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmContact/index.js", "groupTitle": "Cm_Contacts" }, { "type": "get", "url": "/api/cm/contacts/{id}", "title": "Gets a single Contact", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/contacts/{id} -v -u {name}:{password} -X GET", "type": "json" } ], "name": "show", "group": "Cm_Contacts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmContact/index.js", "groupTitle": "Cm_Contacts" }, { "type": "put", "url": "/api/cm/contacts/{id}", "title": "Update a single Contact", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/contacts/{id} -d '{\"fullName\": \"John\", \"lastName\": \"Doe\"}' -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "update", "group": "Cm_Contacts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmContact/index.js", "groupTitle": "Cm_Contacts" }, { "type": "delete", "url": "/api/cm/custom_fields/{id}", "title": "Deletes a Custom Field", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/custom_fields/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteCustom_Fields", "group": "Cm_Custom_Fields", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmCustomField/index.js", "groupTitle": "Cm_Custom_Fields" }, { "type": "get", "url": "/api/cm/custom_fields", "title": "Gets a list of Custom Fields", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/custom_fields -v -u {name}:{password}", "type": "json" } ], "name": "GetCustom_Fields", "group": "Cm_Custom_Fields", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/cm/custom_fields?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/cm/custom_fields?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/cm/custom_fields?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/cm/custom_fields?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/cm/custom_fields?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/cmCustomField/index.js", "groupTitle": "Cm_Custom_Fields" }, { "type": "get", "url": "/api/cm/custom_fields/{id}", "title": "Gets a single Custom Field", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/custom_fields/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowCustom_Fields", "group": "Cm_Custom_Fields", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmCustomField/index.js", "groupTitle": "Cm_Custom_Fields" }, { "type": "put", "url": "/api/cm/custom_fields/{id}", "title": "Update an existing Custom Field", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/custom_fields/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateCustom_Fields", "group": "Cm_Custom_Fields", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmCustomField/index.js", "groupTitle": "Cm_Custom_Fields" }, { "type": "post", "url": "/api/cm/hopper", "title": "Creates a new Hopper", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/hopper -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateHopper", "group": "Cm_Hopper", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "phone", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "active", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "scheduledat", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "countbusyretry", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "countcongestionretry", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "countnoanswerretry", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "callback", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "callbackuniqueid", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "callbackat", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "priority", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "recallme", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "ContactId", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "ListId", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "UserId", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "VoiceQueueId", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "CampaignId", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmHopper/index.js", "groupTitle": "Cm_Hopper" }, { "type": "get", "url": "/api/cm/hopper/describe", "title": "Gets table info about Hopper", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/hopper/describe -v -u {name}:{password}", "type": "json" } ], "name": "DescribeHopper", "group": "Cm_Hopper", "description": "

Motion will return a HTTP status code 200 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmHopper/index.js", "groupTitle": "Cm_Hopper" }, { "type": "get", "url": "/api/cm/hopper", "title": "Gets a list of Hopper", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/hopper -v -u {name}:{password}", "type": "json" } ], "name": "GetHopper", "group": "Cm_Hopper", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/cm/hopper?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/cm/hopper?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/cm/hopper?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/cm/hopper?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/cm/hopper?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/cmHopper/index.js", "groupTitle": "Cm_Hopper" }, { "type": "get", "url": "/api/cm/hopper/{id}", "title": "Gets a single Hopper", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/hopper/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowHopper", "group": "Cm_Hopper", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmHopper/index.js", "groupTitle": "Cm_Hopper" }, { "type": "delete", "url": "/api/cm/hopper_black/{id}", "title": "Deletes a Hopper Black", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/hopper_black/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteHopper_Black", "group": "Cm_Hopper_Black", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmHopperBlack/index.js", "groupTitle": "Cm_Hopper_Black" }, { "type": "get", "url": "/api/cm/hopper_black/describe", "title": "Gets table info about Hopper Black", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/hopper_black/describe -v -u {name}:{password}", "type": "json" } ], "name": "DescribeHopper_Black", "group": "Cm_Hopper_Black", "description": "

Motion will return a HTTP status code 200 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmHopperBlack/index.js", "groupTitle": "Cm_Hopper_Black" }, { "type": "get", "url": "/api/cm/hopper_black", "title": "Gets a list of Hopper Black", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/hopper_black -v -u {name}:{password}", "type": "json" } ], "name": "GetHopper_Black", "group": "Cm_Hopper_Black", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/cm/hopper_black?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/cm/hopper_black?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/cm/hopper_black?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/cm/hopper_black?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/cm/hopper_black?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/cmHopperBlack/index.js", "groupTitle": "Cm_Hopper_Black" }, { "type": "get", "url": "/api/cm/hopper_black/{id}", "title": "Gets a single Hopper Black", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/hopper_black/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowHopper_Black", "group": "Cm_Hopper_Black", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmHopperBlack/index.js", "groupTitle": "Cm_Hopper_Black" }, { "type": "put", "url": "/api/cm/hopper_black/{id}", "title": "Update an existing Hopper Black", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/hopper_black/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateHopper_Black", "group": "Cm_Hopper_Black", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmHopperBlack/index.js", "groupTitle": "Cm_Hopper_Black" }, { "type": "get", "url": "/api/cm/hopper_final/describe", "title": "Gets table info about HopperFinal", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/hopper_final/describe -v -u {name}:{password}", "type": "json" } ], "name": "DescribeHopperFinal", "group": "Cm_Hopper_Final", "description": "

Motion will return a HTTP status code 200 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmHopperFinal/index.js", "groupTitle": "Cm_Hopper_Final" }, { "type": "get", "url": "/api/cm/hopper_final", "title": "Gets a list of HopperFinal", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/hopper_final -v -u {name}:{password}", "type": "json" } ], "name": "GetHopperFinal", "group": "Cm_Hopper_Final", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/cm/hopper_final?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/cm/hopper_final?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/cm/hopper_final?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/cm/hopper_final?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/cm/hopper_final?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/cmHopperFinal/index.js", "groupTitle": "Cm_Hopper_Final" }, { "type": "get", "url": "/api/cm/hopper_final/{id}", "title": "Gets a single HopperFinal", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/hopper_final/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowHopperFinal", "group": "Cm_Hopper_Final", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmHopperFinal/index.js", "groupTitle": "Cm_Hopper_Final" }, { "type": "post", "url": "/api/cm/hopper_final/checkContactHopper", "title": "Check if contact is in hopper", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/hopper_final/checkContactHopper -d '{\"VoiceQueueId\": \"VoiceQueueId\", \"CampaignId\": \"CampaignId\", \"ContactId\": \"ContactId\"}' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "_checkContactHopper", "group": "Cm_Hopper_Final", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmHopperFinal/index.js", "groupTitle": "Cm_Hopper_Final" }, { "type": "get", "url": "/api/cm/hopper_final/campaign/countAttributes/{id}", "title": "Return number contacts for attributes", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/hopper_final/campaign/countAttributes/{id} -d '{\"disposition\": \"OK\"}' -v -u {name}:{password} -X GET", "type": "json" } ], "name": "countContactsIvrCampaignHopperFinal", "group": "Cm_Hopper_Final", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmHopperFinal/index.js", "groupTitle": "Cm_Hopper_Final" }, { "type": "get", "url": "/api/cm/hopper_final/voice/queue/countAttributes/{id}", "title": "Return number contacts for attributes", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/hopper_final/voice/queue/countAttributes/{id} -d '{\"disposition\": \"OK\"}' -v -u {name}:{password} -X GET", "type": "json" } ], "name": "countContactsQueueCampaignHopperFinal", "group": "Cm_Hopper_Final", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmHopperFinal/index.js", "groupTitle": "Cm_Hopper_Final" }, { "type": "post", "url": "/api/cm/hopper_final/campaign/{id}", "title": "Move contacts in hopper", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/hopper_final/campaign/moveContacts/{id} -d '{\"state\": \"state\"}' -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "moveContactsIvrCampaignHopperFinal", "group": "Cm_Hopper_Final", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmHopperFinal/index.js", "groupTitle": "Cm_Hopper_Final" }, { "type": "post", "url": "/api/cm/hopper_final/voice/queue/{id}", "title": "Move contacts in hopper", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/hopper_final/voice/queue/moveContacts/{id} -d '{\"state\": \"state\"}' -H 'Content-Type: application/json' -v -u {name}:{password}", "type": "json" } ], "name": "moveContactsQueueCampaignHopperFinal", "group": "Cm_Hopper_Final", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmHopperFinal/index.js", "groupTitle": "Cm_Hopper_Final" }, { "type": "put", "url": "/api/cm/hopper_final/{id}", "title": "Update a single hopper final", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/hopper_final/{id} -d '{\"disposition\": \"OK\"}' -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "update", "group": "Cm_Hopper_Final", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmHopperFinal/index.js", "groupTitle": "Cm_Hopper_Final" }, { "type": "post", "url": "/api/cm/hopper_history", "title": "Creates a new HopperHistory", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/hopper_history -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateHopperHistory", "group": "Cm_Hopper_History", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "Integer", "optional": true, "field": "state", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "statedesc", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "scheduledat", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "countbusyretry", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "countcongestionretry", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "countnoanswerretry", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "countglobal", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "uniqueid", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "calleridnum", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "calleridname", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "starttime", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "responsetime", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "answertime", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "droptime", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "endtime", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "ringtime", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "holdtime", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "talktime", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "followuptime", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "dropreason", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "campaign", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "campaigntype", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "membername", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "reason", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "amd", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "fax", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "callback", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "callbackuniqueid", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "callbackat", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "recallme", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "editedat", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "edited", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmHopperHistory/index.js", "groupTitle": "Cm_Hopper_History" }, { "type": "get", "url": "/api/cm/hopper_history/describe", "title": "Gets table info about HopperHistory", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/hopper_history/describe -v -u {name}:{password}", "type": "json" } ], "name": "DescribeHopperHistory", "group": "Cm_Hopper_History", "description": "

Motion will return a HTTP status code 200 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmHopperHistory/index.js", "groupTitle": "Cm_Hopper_History" }, { "type": "get", "url": "/api/cm/hopper_history", "title": "Gets a list of HopperHistory", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/hopper_history -v -u {name}:{password}", "type": "json" } ], "name": "GetHopperHistory", "group": "Cm_Hopper_History", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/cm/hopper_history?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/cm/hopper_history?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/cm/hopper_history?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/cm/hopper_history?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/cm/hopper_history?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/cmHopperHistory/index.js", "groupTitle": "Cm_Hopper_History" }, { "type": "get", "url": "/api/cm/hopper_history/{id}", "title": "Gets a single HopperHistory", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/hopper_history/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowHopperHistory", "group": "Cm_Hopper_History", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmHopperHistory/index.js", "groupTitle": "Cm_Hopper_History" }, { "type": "put", "url": "/api/cm/hopper_history/{id}", "title": "Update a single hopper history", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/hopper_history/{id} -d '{\"disposition\": \"OK\"}' -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "update", "group": "Cm_Hopper_History", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmHopperHistory/index.js", "groupTitle": "Cm_Hopper_History" }, { "type": "delete", "url": "/api/cm/hopper/{id}", "title": "Delete Hopper", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/hopper/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "destroy", "group": "Cm_Hopper", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmHopper/index.js", "groupTitle": "Cm_Hopper" }, { "type": "get", "url": "/api/cm/hopper/opencontacts", "title": "Gets Open Contacts", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/hopper/opencontacts -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getOpenContacts", "group": "Cm_Hopper", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmHopper/index.js", "groupTitle": "Cm_Hopper" }, { "type": "post", "url": "/api/cm/hopper/preview", "title": "Gets Preview Dialer Contacts", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/hopper/preview -d '{\"hopperIds\": [1,2]}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getPreview", "group": "Cm_Hopper", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmHopper/index.js", "groupTitle": "Cm_Hopper" }, { "type": "put", "url": "/api/cm/hopper/{id}", "title": "Update an existing Hopper", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/hopper/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateHopper", "group": "Cm_Hopper", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmHopper/index.js", "groupTitle": "Cm_Hopper" }, { "type": "post", "url": "/api/cm/lists", "title": "Creates a new List", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/lists -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateLists", "group": "Cm_Lists", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmList/index.js", "groupTitle": "Cm_Lists" }, { "type": "delete", "url": "/api/cm/lists/{id}", "title": "Deletes a List", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/lists/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteLists", "group": "Cm_Lists", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmList/index.js", "groupTitle": "Cm_Lists" }, { "type": "get", "url": "/api/cm/lists/{id}/users", "title": "Gets agents from list", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/lists/{id}/users -v -u {name}:{password} -X GET", "type": "json" } ], "name": "GetAgents", "group": "Cm_Lists", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmList/index.js", "groupTitle": "Cm_Lists" }, { "type": "get", "url": "/api/cm/lists", "title": "Gets a list of Lists", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/lists -v -u {name}:{password}", "type": "json" } ], "name": "GetLists", "group": "Cm_Lists", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/cm/lists?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/cm/lists?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/cm/lists?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/cm/lists?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/cm/lists?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/cmList/index.js", "groupTitle": "Cm_Lists" }, { "type": "delete", "url": "/api/cm/lists/{id}/users", "title": "Removes agents from a list", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/lists/{id}/users?ids=1&ids=2 -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "RemoveAgents", "group": "Cm_Lists", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmList/index.js", "groupTitle": "Cm_Lists" }, { "type": "get", "url": "/api/cm/lists/{id}", "title": "Gets a single List", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/lists/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowLists", "group": "Cm_Lists", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmList/index.js", "groupTitle": "Cm_Lists" }, { "type": "post", "url": "/api/cm/lists/{id}/users", "title": "Adds agents to a list", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/lists/{id}/users -d '{\"ids\": [1,2]}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addAgents", "group": "Cm_Lists", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmList/index.js", "groupTitle": "Cm_Lists" }, { "type": "post", "url": "/api/cm/lists/{id}/contacts", "title": "Creates new contacts", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/lists/{id}/contacts -d '[{\"firstName\": \"John Doe\", \"email\": \"john.doe@xcally.com\", \"...\": \"...\"}]' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addContacts", "group": "Cm_Lists", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "firstName", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "lastName", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "tags", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "street", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "postalCode", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "city", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "country", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "dateOfBirth", "description": "" }, { "group": "Body", "type": "Text", "optional": true, "field": "description", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "phone", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "mobile", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "fax", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "email", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "url", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "facebook", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "twitter", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmList/index.js", "groupTitle": "Cm_Lists" }, { "type": "post", "url": "/api/cm/lists/{id}/fields", "title": "Creates a new custom field", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/lists/{id}/fields -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addCustomField", "group": "Cm_Lists", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmList/index.js", "groupTitle": "Cm_Lists" }, { "type": "post", "url": "/api/lists/{id}/dispositions", "title": "Creates a new sub disposition", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/lists/{id}/disposition -d '{\"name\": \"SATISFIED\"}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addDisposition", "group": "Cm_Lists", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmList/index.js", "groupTitle": "Cm_Lists" }, { "type": "get", "url": "/api/cm/lists/{id}/contacts", "title": "Gets List Contacts", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/lists/{id}/contacts -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getContacts", "group": "Cm_Lists", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmList/index.js", "groupTitle": "Cm_Lists" }, { "type": "get", "url": "/api/cm/lists/{id}/fields", "title": "Gets Custom Fields", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/lists/{id}/fields -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getCustomFields", "group": "Cm_Lists", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmList/index.js", "groupTitle": "Cm_Lists" }, { "type": "get", "url": "/api/cm/lists/{id}/dispositions", "title": "Gets Dispositions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/lists/{id}/dispositions -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getDispositions", "group": "Cm_Lists", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmList/index.js", "groupTitle": "Cm_Lists" }, { "type": "get", "url": "/api/cm/lists/{id}/contacts/csv", "title": "Gets CSV List Contacts", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/lists/{id}/contacts/csv -v -u {name}:{password} -X GET", "type": "json" } ], "name": "grunt", "group": "Cm_Lists", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmList/index.js", "groupTitle": "Cm_Lists" }, { "type": "put", "url": "/api/cm/lists/{id}", "title": "Update an existing List", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/lists/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateLists", "group": "Cm_Lists", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmList/index.js", "groupTitle": "Cm_Lists" }, { "type": "post", "url": "/api/cm/contacts/csv", "title": "Create new contacts by csv", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/contacts/csv -H 'Content-Type: multipart/form-data' -F 'file=@{filename}' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "uploadCsv", "group": "Cm_contacts", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmContact/index.js", "groupTitle": "Cm_contacts" }, { "type": "delete", "url": "/api/conditions/{id}", "title": "Deletes a Condition", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/conditions/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteConditions", "group": "Conditions", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/condition/index.js", "groupTitle": "Conditions" }, { "type": "put", "url": "/api/conditions/{id}", "title": "Update an existing Condition", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/conditions/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateConditions", "group": "Conditions", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/condition/index.js", "groupTitle": "Conditions" }, { "type": "post", "url": "/api/cm/custom_field", "title": "Create a new custom field", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cm/custom_field -d '{\"name\": \"mycf\", \"type\": \"text\"}' -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateCustomField", "group": "Custom_Fields", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cmCustomField/index.js", "groupTitle": "Custom_Fields" }, { "type": "post", "url": "/api/dashboards/items", "title": "Create dasboard item", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/dashboards/items \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "Create", "group": "Dashboard_Items", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/dashboardItem/index.js", "groupTitle": "Dashboard_Items" }, { "type": "delete", "url": "/api/dashboards/items/{id}", "title": "Deletes a Dashboard Item", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/dashboards/items/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteDashboard_Items", "group": "Dashboard_Items", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/dashboardItem/index.js", "groupTitle": "Dashboard_Items" }, { "type": "get", "url": "/api/dashboards/items/{id}", "title": "Gets a single Dashboard Item", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/dashboards/items/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowDashboard_Items", "group": "Dashboard_Items", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/dashboardItem/index.js", "groupTitle": "Dashboard_Items" }, { "type": "put", "url": "/api/dashboards/items/{id}", "title": "Update an existing item", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/dashboards/items/{id} -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "Update", "group": "Dashboard_Items", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/dashboardItem/index.js", "groupTitle": "Dashboard_Items" }, { "type": "post", "url": "/api/dashboards/clone", "title": "Clone an existing Dashboard", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/dashboards/clone -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CloneDashboards", "group": "Dashboards", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/dashboard/index.js", "groupTitle": "Dashboards" }, { "type": "post", "url": "/api/dashboards", "title": "Creates a new Dashboard", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/dashboards -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateDashboards", "group": "Dashboards", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/dashboard/index.js", "groupTitle": "Dashboards" }, { "type": "delete", "url": "/api/dashboards/{id}", "title": "Deletes a Dashboard", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/dashboards/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteDashboards", "group": "Dashboards", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/dashboard/index.js", "groupTitle": "Dashboards" }, { "type": "get", "url": "/api/dashboards", "title": "Gets a list of Dashboards", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/dashboards -v -u {name}:{password}", "type": "json" } ], "name": "GetDashboards", "group": "Dashboards", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/dashboards?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/dashboards?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/dashboards?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/dashboards?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/dashboards?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/dashboard/index.js", "groupTitle": "Dashboards" }, { "type": "get", "url": "/api/dashboards/{id}", "title": "Gets a single Dashboard", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/dashboards/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowDashboards", "group": "Dashboards", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/dashboard/index.js", "groupTitle": "Dashboards" }, { "type": "post", "url": "/api/dashboards/{id}/items", "title": "Creates new item", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/dashboards/{id}/items -d '{\"type\": \"counter\", \"...\": \"...\"}]' -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addItem", "group": "Dashboards", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/dashboard/index.js", "groupTitle": "Dashboards" }, { "type": "put", "url": "/api/dashboards/{id}", "title": "Update an existing Dashboard", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/dashboards/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateDashboards", "group": "Dashboards", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/dashboard/index.js", "groupTitle": "Dashboards" }, { "type": "get", "url": "/api/dashboards/{id}/items", "title": "Gets items", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/dashboards/{id}/items -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getItems", "group": "Dashboars", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/dashboard/index.js", "groupTitle": "Dashboars" }, { "type": "post", "url": "/api/integrations/desk/accounts", "title": "Creates a new Desk Account", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/desk/accounts -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateDesk_Accounts", "group": "Desk_Accounts", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": true, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "username", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "remoteUri", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"basic\"" ], "optional": true, "field": "authType", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "password", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "consumerKey", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "consumerSecret", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "token", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "tokenSecret", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "serverUrl", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"integrationTab\"", "\"newTab\"" ], "optional": true, "field": "type", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intDeskAccount/index.js", "groupTitle": "Desk_Accounts" }, { "type": "delete", "url": "/api/integrations/desk/accounts/{id}", "title": "Deletes a Desk Account", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/desk/accounts/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteDesk_Accounts", "group": "Desk_Accounts", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intDeskAccount/index.js", "groupTitle": "Desk_Accounts" }, { "type": "get", "url": "/api/integrations/desk/accounts", "title": "Gets a list of Desk Accounts", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/desk/accounts -v -u {name}:{password}", "type": "json" } ], "name": "GetDesk_Accounts", "group": "Desk_Accounts", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/integrations/desk/accounts?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/integrations/desk/accounts?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/integrations/desk/accounts?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/integrations/desk/accounts?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/integrations/desk/accounts?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/intDeskAccount/index.js", "groupTitle": "Desk_Accounts" }, { "type": "get", "url": "/api/integrations/desk/accounts/{id}", "title": "Gets a single Desk Account", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/desk/accounts/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowDesk_Accounts", "group": "Desk_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intDeskAccount/index.js", "groupTitle": "Desk_Accounts" }, { "type": "post", "url": "/api/integrations/desk/accounts/{id}/configurations", "title": "Creates new configuration", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/desk/accounts/{id}/configurations -d '{\"name\": \"conf1\"}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addConfiguration", "group": "Desk_Accounts", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intDeskAccount/index.js", "groupTitle": "Desk_Accounts" }, { "type": "get", "url": "/api/integrations/desk/accounts/{id}/configurations", "title": "Gets account configurations", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/desk/accounts/{id}/configurations -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getConfigurations", "group": "Desk_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intDeskAccount/index.js", "groupTitle": "Desk_Accounts" }, { "type": "get", "url": "/api/integrations/desk/accounts/{id}/fields", "title": "Gets account fields", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/desk/accounts/{id}/fields -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getFields", "group": "Desk_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intDeskAccount/index.js", "groupTitle": "Desk_Accounts" }, { "type": "put", "url": "/api/integrations/desk/accounts/{id}", "title": "Update an existing Desk Account", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/desk/accounts/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateDesk_Accounts", "group": "Desk_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intDeskAccount/index.js", "groupTitle": "Desk_Accounts" }, { "type": "post", "url": "/api/integrations/desk/configurations", "title": "Creates a new Desk Configuration", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/desk/configurations -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateDesk_Configurations", "group": "Desk_Configurations", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": true, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intDeskConfiguration/index.js", "groupTitle": "Desk_Configurations" }, { "type": "delete", "url": "/api/integrations/desk/configurations/{id}", "title": "Deletes a Desk Configuration", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/desk/configurations/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteDesk_Configurations", "group": "Desk_Configurations", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intDeskConfiguration/index.js", "groupTitle": "Desk_Configurations" }, { "type": "get", "url": "/api/integrations/desk/configurations", "title": "Gets a list of Desk Configurations", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/desk/configurations -v -u {name}:{password}", "type": "json" } ], "name": "GetDesk_Configurations", "group": "Desk_Configurations", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/integrations/desk/configurations?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/integrations/desk/configurations?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/integrations/desk/configurations?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/integrations/desk/configurations?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/integrations/desk/configurations?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/intDeskConfiguration/index.js", "groupTitle": "Desk_Configurations" }, { "type": "get", "url": "/api/integrations/desk/configurations/{id}", "title": "Gets a single Desk Configuration", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/desk/configurations/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowDesk_Configurations", "group": "Desk_Configurations", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intDeskConfiguration/index.js", "groupTitle": "Desk_Configurations" }, { "type": "get", "url": "/api/integrations/desk/configurations/{id}/descriptions", "title": "Gets configurations descriptions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/desk/configurations/{id}/descriptions -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getDescriptions", "group": "Desk_Configurations", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intDeskConfiguration/index.js", "groupTitle": "Desk_Configurations" }, { "type": "get", "url": "/api/integrations/desk/configurations/{id}/fields", "title": "Gets configurations fields", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/desk/configurations/{id}/fields -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getFields", "group": "Desk_Configurations", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intDeskConfiguration/index.js", "groupTitle": "Desk_Configurations" }, { "type": "get", "url": "/api/integrations/desk/configurations/{id}/subjects", "title": "Gets configurations subjects", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/desk/configurations/{id}/subjects -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getSubjects", "group": "Desk_Configurations", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intDeskConfiguration/index.js", "groupTitle": "Desk_Configurations" }, { "type": "get", "url": "/api/integrations/desk/configurations/{id}/tags", "title": "Gets configurations tags", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/desk/configurations/{id}/tags -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getTags", "group": "Desk_Configurations", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intDeskConfiguration/index.js", "groupTitle": "Desk_Configurations" }, { "type": "post", "url": "/api/integrations/desk/configurations/{id}/tags", "title": "Sets new tags", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/desk/configurations/{id}/tags -d '{\"ids\": [1,12]}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "setTags", "group": "Desk_Configurations", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intDeskConfiguration/index.js", "groupTitle": "Desk_Configurations" }, { "type": "put", "url": "/api/integrations/desk/configurations/{id}", "title": "Update an existing Desk Configuration", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/desk/configurations/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateDesk_Configurations", "group": "Desk_Configurations", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intDeskConfiguration/index.js", "groupTitle": "Desk_Configurations" }, { "type": "post", "url": "/api/integrations/desk/fields", "title": "Creates a new Desk Field", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/desk/fields -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateDesk_Fields", "group": "Desk_Fields", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "allowedValues": [ "\"string\"", "\"variable\"", "\"customVariable\"", "\"keyValue\"" ], "optional": true, "field": "type", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "content", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "key", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"string\"", "\"variable\"", "\"customVariable\"" ], "optional": true, "field": "keyType", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "keyContent", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "idField", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "nameField", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "customField", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "variableName", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intDeskField/index.js", "groupTitle": "Desk_Fields" }, { "type": "delete", "url": "/api/integrations/desk/fields/{id}", "title": "Deletes a Desk Field", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/desk/fields/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteDesk_Fields", "group": "Desk_Fields", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intDeskField/index.js", "groupTitle": "Desk_Fields" }, { "type": "get", "url": "/api/integrations/desk/fields", "title": "Gets a list of Desk Fields", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/desk/fields -v -u {name}:{password}", "type": "json" } ], "name": "GetDesk_Fields", "group": "Desk_Fields", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/integrations/desk/fields?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/integrations/desk/fields?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/integrations/desk/fields?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/integrations/desk/fields?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/integrations/desk/fields?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/intDeskField/index.js", "groupTitle": "Desk_Fields" }, { "type": "get", "url": "/api/integrations/desk/fields/{id}", "title": "Gets a single Desk Field", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/desk/fields/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowDesk_Fields", "group": "Desk_Fields", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intDeskField/index.js", "groupTitle": "Desk_Fields" }, { "type": "put", "url": "/api/integrations/desk/fields/{id}", "title": "Update an existing Desk Field", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/desk/fields/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateDesk_Fields", "group": "Desk_Fields", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intDeskField/index.js", "groupTitle": "Desk_Fields" }, { "type": "post", "url": "/api/fax/accounts", "title": "Creates a new Account", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/accounts -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateAccounts", "group": "Fax_Accounts", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "ecm", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "headerinfo", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "localstationid", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"2400\"", "\"4800\"", "\"7200\"", "\"9600\"", "\"12000\"", "\"14400\"" ], "optional": true, "field": "minrate", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"2400\"", "\"4800\"", "\"7200\"", "\"9600\"", "\"12000\"", "\"14400\"" ], "optional": true, "field": "maxrate", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "modem", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "gateway", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "faxdetect", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "t38timeout", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"SIP\"", "\"IAX\"", "\"DADHI\"", "\"KHOMP\"" ], "optional": true, "field": "tech", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "key", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxAccount/index.js", "groupTitle": "Fax_Accounts" }, { "type": "delete", "url": "/api/fax/accounts/{id}", "title": "Deletes a Account", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/accounts/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteAccounts", "group": "Fax_Accounts", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxAccount/index.js", "groupTitle": "Fax_Accounts" }, { "type": "get", "url": "/api/fax/accounts/describe", "title": "Gets table info about Accounts", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/accounts/describe -v -u {name}:{password}", "type": "json" } ], "name": "DescribeAccounts", "group": "Fax_Accounts", "description": "

Motion will return a HTTP status code 200 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxAccount/index.js", "groupTitle": "Fax_Accounts" }, { "type": "get", "url": "/api/fax/accounts", "title": "Gets a list of Accounts", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/accounts -v -u {name}:{password}", "type": "json" } ], "name": "GetAccounts", "group": "Fax_Accounts", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/fax/accounts?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/fax/accounts?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/fax/accounts?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/fax/accounts?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/fax/accounts?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/faxAccount/index.js", "groupTitle": "Fax_Accounts" }, { "type": "delete", "url": "/api/fax/accounts/{id}/canned_answers", "title": "Removes canned answers from account", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/accounts/{id}/canned_answers?ids=1&ids=2 -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "RemoveAnswers", "group": "Fax_Accounts", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxAccount/index.js", "groupTitle": "Fax_Accounts" }, { "type": "get", "url": "/api/fax/accounts/{id}", "title": "Gets a single Account", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/accounts/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowAccounts", "group": "Fax_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxAccount/index.js", "groupTitle": "Fax_Accounts" }, { "type": "post", "url": "/api/fax/accounts/{id}/canned_answers", "title": "Creates new canned answer", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/accounts/{id}/canned_answers -d '{\"name\": \"vip\"}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addAnswer", "group": "Fax_Accounts", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "key", "description": "" }, { "group": "Body", "type": "Text", "optional": false, "field": "value", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxAccount/index.js", "groupTitle": "Fax_Accounts" }, { "type": "post", "url": "/api/fax/accounts/{id}/applications", "title": "Creates new applications", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/accounts/{id}/applications -d '[{\"app\": \"queue\", \"...\": \"...\"}]' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addApplications", "group": "Fax_Accounts", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "Integer", "optional": false, "field": "priority", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "app", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "appdata", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "interval", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxAccount/index.js", "groupTitle": "Fax_Accounts" }, { "type": "post", "url": "/api/fax/accounts/addaccountapplications", "title": "Creates new account and applications", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/accounts/addaccountapplications -d '[{\"name\": \"name\", \"...\": \"...\"}]' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addApplications", "group": "Fax_Accounts", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "Integer", "optional": false, "field": "priority", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "app", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "appdata", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "interval", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxAccount/index.js", "groupTitle": "Fax_Accounts" }, { "type": "post", "url": "/api/fax/accounts/{id}/dispositions", "title": "Creates new disposition", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/accounts/{id}/dispositions -d '{\"name\": \"Satisfied\"}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addDisposition", "group": "Fax_Accounts", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "name", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxAccount/index.js", "groupTitle": "Fax_Accounts" }, { "type": "post", "url": "/api/fax/accounts/{id}/dispositions", "title": "Creates many dispositions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/accounts/{id}/dispositions -d '[{\"name\": \"Satisfied\"}]' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addDispositions", "group": "Fax_Accounts", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "name", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxAccount/index.js", "groupTitle": "Fax_Accounts" }, { "type": "post", "url": "/api/fax/accounts/{id}/interactions", "title": "Creates new interactions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/accounts/{id}/interactions -d '[{\"host\": \"host\", \"username\": \"username\", \"password\": \"password\", \"...\": \"...\"}]' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addInteraction", "group": "Fax_Accounts", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "Boolean", "optional": true, "field": "closed", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "closedAt", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "disposition", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "note", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "read1stAt", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "fax", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"in\"", "\"out\"" ], "optional": false, "field": "firstMsgDirection", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "lastMsgAt", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"in\"", "\"out\"" ], "optional": false, "field": "lastMsgDirection", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxAccount/index.js", "groupTitle": "Fax_Accounts" }, { "type": "get", "url": "/api/fax/accounts/{id}/canned_answers", "title": "Gets account canned answers", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/accounts/{id}/canned_answers -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getAnswers", "group": "Fax_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxAccount/index.js", "groupTitle": "Fax_Accounts" }, { "type": "get", "url": "/api/fax/accounts/{id}/applications", "title": "Gets account pplications", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/accounts/{id}/applications -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getApplications", "group": "Fax_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxAccount/index.js", "groupTitle": "Fax_Accounts" }, { "type": "get", "url": "/api/fax/accounts/{id}/dispositions", "title": "Gets account dispositions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/accounts/{id}/dispositions -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getDispositions", "group": "Fax_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxAccount/index.js", "groupTitle": "Fax_Accounts" }, { "type": "get", "url": "/api/fax/accounts/{id}/interactions", "title": "Gets account interactions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/accounts/{id}/interactions -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getInteraction", "group": "Fax_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxAccount/index.js", "groupTitle": "Fax_Accounts" }, { "type": "get", "url": "/api/fax/accounts/{id}/messages", "title": "Gets account messages", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/accounts/{id}/messages -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getMessages", "group": "Fax_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxAccount/index.js", "groupTitle": "Fax_Accounts" }, { "type": "post", "url": "/api/fax/accounts/{id}/send", "title": "Send new fax", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/accounts/{id}/send -d '{from: '\"John Doe\" <123456>'}' -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "sendFax", "group": "Fax_Accounts", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxAccount/index.js", "groupTitle": "Fax_Accounts" }, { "type": "put", "url": "/api/fax/accounts/{id}", "title": "Update an existing Account", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/accounts/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateAccounts", "group": "Fax_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxAccount/index.js", "groupTitle": "Fax_Accounts" }, { "type": "post", "url": "/api/fax/accounts/updateaccountapplications", "title": "Update account and applications", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/accounts/updateaccountapplications -d '[{\"name\": \"name\", \"...\": \"...\"}]' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "updateApplications", "group": "Fax_Accounts", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "Integer", "optional": false, "field": "priority", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "app", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "appdata", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "interval", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxAccount/index.js", "groupTitle": "Fax_Accounts" }, { "type": "post", "url": "/api/fax/applications", "title": "Creates a new Application", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/applications -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateApplications", "group": "Fax_Applications", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "Integer", "optional": false, "field": "priority", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "app", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "appdata", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "interval", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxApplication/index.js", "groupTitle": "Fax_Applications" }, { "type": "delete", "url": "/api/fax/applications/{id}", "title": "Deletes a Application", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/applications/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteApplications", "group": "Fax_Applications", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxApplication/index.js", "groupTitle": "Fax_Applications" }, { "type": "get", "url": "/api/fax/applications", "title": "Gets a list of Applications", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/applications -v -u {name}:{password}", "type": "json" } ], "name": "GetApplications", "group": "Fax_Applications", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/fax/applications?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/fax/applications?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/fax/applications?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/fax/applications?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/fax/applications?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/faxApplication/index.js", "groupTitle": "Fax_Applications" }, { "type": "get", "url": "/api/fax/applications/{id}", "title": "Gets a single Application", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/applications/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowApplications", "group": "Fax_Applications", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxApplication/index.js", "groupTitle": "Fax_Applications" }, { "type": "put", "url": "/api/fax/applications/{id}", "title": "Update an existing Application", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/applications/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateApplications", "group": "Fax_Applications", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxApplication/index.js", "groupTitle": "Fax_Applications" }, { "type": "post", "url": "/api/fax/dispositions", "title": "Creates a new Disposition", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/dispositions -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateDispositions", "group": "Fax_Dispositions", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "name", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxDisposition/index.js", "groupTitle": "Fax_Dispositions" }, { "type": "delete", "url": "/api/fax/dispositions/{id}", "title": "Deletes a Disposition", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/dispositions/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteDispositions", "group": "Fax_Dispositions", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxDisposition/index.js", "groupTitle": "Fax_Dispositions" }, { "type": "get", "url": "/api/fax/dispositions/{id}", "title": "Gets a single Disposition", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/dispositions/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowDispositions", "group": "Fax_Dispositions", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxDisposition/index.js", "groupTitle": "Fax_Dispositions" }, { "type": "put", "url": "/api/fax/dispositions/{id}", "title": "Update an existing Disposition", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/dispositions/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateDispositions", "group": "Fax_Dispositions", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxDisposition/index.js", "groupTitle": "Fax_Dispositions" }, { "type": "post", "url": "/api/fax/interactions/{id}/tags", "title": "Add tags to the interaction", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/interaction/{id}/tags -d '{\"ids\": [1,2]}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "AddTags", "group": "Fax_Interactions", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxInteraction/index.js", "groupTitle": "Fax_Interactions" }, { "type": "post", "url": "/api/fax/interactions", "title": "Creates a new Interaction", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/interactions -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateInteractions", "group": "Fax_Interactions", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "Boolean", "optional": true, "field": "closed", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "closedAt", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "disposition", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "note", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "read1stAt", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "fax", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"in\"", "\"out\"" ], "optional": false, "field": "firstMsgDirection", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "lastMsgAt", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"in\"", "\"out\"" ], "optional": false, "field": "lastMsgDirection", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxInteraction/index.js", "groupTitle": "Fax_Interactions" }, { "type": "delete", "url": "/api/fax/interactions/{id}", "title": "Deletes a Interaction", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/interactions/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteInteractions", "group": "Fax_Interactions", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxInteraction/index.js", "groupTitle": "Fax_Interactions" }, { "type": "get", "url": "/api/fax/interactions/describe", "title": "Gets table info about Interactions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/interactions/describe -v -u {name}:{password}", "type": "json" } ], "name": "DescribeInteractions", "group": "Fax_Interactions", "description": "

Motion will return a HTTP status code 200 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxInteraction/index.js", "groupTitle": "Fax_Interactions" }, { "type": "get", "url": "/api/fax/interactions", "title": "Gets a list of Interactions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/interactions -v -u {name}:{password}", "type": "json" } ], "name": "GetInteractions", "group": "Fax_Interactions", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/fax/interactions?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/fax/interactions?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/fax/interactions?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/fax/interactions?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/fax/interactions?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/faxInteraction/index.js", "groupTitle": "Fax_Interactions" }, { "type": "delete", "url": "/api/fax/interactions/{id}/tags", "title": "Removes tags from interaction", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/interactions/{id}/tags?ids=1&ids=2 -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "RemoveTags", "group": "Fax_Interactions", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxInteraction/index.js", "groupTitle": "Fax_Interactions" }, { "type": "get", "url": "/api/fax/interactions/{id}", "title": "Gets a single Interaction", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/interactions/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowInteractions", "group": "Fax_Interactions", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxInteraction/index.js", "groupTitle": "Fax_Interactions" }, { "type": "post", "url": "/api/fax/interactions/{id}/messages", "title": "Creates new messages", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/interactions/{id}/messages -d '[{\"to\": \"+3901119886500\", \"...\": \"...\"}]' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addMessage", "group": "Fax_Interactions", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "Text", "optional": false, "field": "body", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "read", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"in\"", "\"out\"" ], "optional": false, "field": "direction", "description": "" }, { "group": "Body", "type": "Text", "optional": true, "field": "failMessage", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "readAt", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxInteraction/index.js", "groupTitle": "Fax_Interactions" }, { "type": "get", "url": "/api/fax/interactions/{id}/messages", "title": "Gets interaction messages", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/interactions/{id}/messages -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getMessages", "group": "Fax_Interactions", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxInteraction/index.js", "groupTitle": "Fax_Interactions" }, { "type": "put", "url": "/api/fax/interactions/{id}", "title": "Update an existing Interaction", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/interactions/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateInteractions", "group": "Fax_Interactions", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxInteraction/index.js", "groupTitle": "Fax_Interactions" }, { "type": "delete", "url": "/api/fax/messages/{id}", "title": "Deletes a Message", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/messages/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteMessages", "group": "Fax_Messages", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxMessage/index.js", "groupTitle": "Fax_Messages" }, { "type": "get", "url": "/api/fax/messages/describe", "title": "Gets table info about Messages", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/messages/describe -v -u {name}:{password}", "type": "json" } ], "name": "DescribeMessages", "group": "Fax_Messages", "description": "

Motion will return a HTTP status code 200 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxMessage/index.js", "groupTitle": "Fax_Messages" }, { "type": "get", "url": "/api/fax/messages", "title": "Gets a list of Messages", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/messages -v -u {name}:{password}", "type": "json" } ], "name": "GetMessages", "group": "Fax_Messages", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/fax/messages?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/fax/messages?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/fax/messages?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/fax/messages?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/fax/messages?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/faxMessage/index.js", "groupTitle": "Fax_Messages" }, { "type": "get", "url": "/api/fax/messages/{id}", "title": "Gets a single Message", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/messages/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowMessages", "group": "Fax_Messages", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxMessage/index.js", "groupTitle": "Fax_Messages" }, { "type": "put", "url": "/api/fax/messages/{id}/accept", "title": "Accepts message", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/messages/{id}/accept \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "acceptMessage", "group": "Fax_Messages", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxMessage/index.js", "groupTitle": "Fax_Messages" }, { "type": "post", "url": "/api/fax/messages", "title": "Create message and send Fax", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/messages/{id}/reject \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "rejectMessage", "group": "Fax_Messages", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxMessage/index.js", "groupTitle": "Fax_Messages" }, { "type": "put", "url": "/api/fax/messages/{id}/reject", "title": "Rejects message", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/messages/{id}/reject \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "rejectMessage", "group": "Fax_Messages", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxMessage/index.js", "groupTitle": "Fax_Messages" }, { "type": "put", "url": "/api/fax/messages/{id}", "title": "Update an existing Message", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/messages/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateMessages", "group": "Fax_Messages", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxMessage/index.js", "groupTitle": "Fax_Messages" }, { "type": "post", "url": "/api/fax/reports/queue", "title": "Creates a new Fax Queue Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/reports/queue -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateFax_Queue_Reports", "group": "Fax_Queue_Reports", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "uniqueid", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "from", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "joinAt", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "leaveAt", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "acceptAt", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "exitAt", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "reason", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxQueueReport/index.js", "groupTitle": "Fax_Queue_Reports" }, { "type": "delete", "url": "/api/fax/reports/queue/{id}", "title": "Deletes a Fax Queue Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/reports/queue/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteFax_Queue_Reports", "group": "Fax_Queue_Reports", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxQueueReport/index.js", "groupTitle": "Fax_Queue_Reports" }, { "type": "get", "url": "/api/fax/reports/queue/describe", "title": "Gets table info about Fax Queue Reports", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/reports/queue/describe -v -u {name}:{password}", "type": "json" } ], "name": "DescribeFax_Queue_Reports", "group": "Fax_Queue_Reports", "description": "

Motion will return a HTTP status code 200 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxQueueReport/index.js", "groupTitle": "Fax_Queue_Reports" }, { "type": "get", "url": "/api/fax/reports/queue", "title": "Gets a list of Fax Queue Reports", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/reports/queue -v -u {name}:{password}", "type": "json" } ], "name": "GetFax_Queue_Reports", "group": "Fax_Queue_Reports", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/fax/reports/queue?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/fax/reports/queue?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/fax/reports/queue?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/fax/reports/queue?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/fax/reports/queue?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/faxQueueReport/index.js", "groupTitle": "Fax_Queue_Reports" }, { "type": "get", "url": "/api/fax/reports/queue/{id}", "title": "Gets a single Fax Queue Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/reports/queue/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowFax_Queue_Reports", "group": "Fax_Queue_Reports", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxQueueReport/index.js", "groupTitle": "Fax_Queue_Reports" }, { "type": "put", "url": "/api/fax/reports/queue/{id}", "title": "Update an existing Fax Queue Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/reports/queue/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateFax_Queue_Reports", "group": "Fax_Queue_Reports", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxQueueReport/index.js", "groupTitle": "Fax_Queue_Reports" }, { "type": "post", "url": "/api/fax/queues/{id}/users", "title": "Add agents to a queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/queues/{id}/users -d '{\"ids\": [1,2], \"penalty\": 2}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "AddAgents", "group": "Fax_Queues", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxQueue/index.js", "groupTitle": "Fax_Queues" }, { "type": "post", "url": "/api/fax/queues/{id}/teams", "title": "Add teams to a queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/queues/{id}/teams -d '{\"ids\": [1,2]}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "AddTeams", "group": "Fax_Queues", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxQueue/index.js", "groupTitle": "Fax_Queues" }, { "type": "post", "url": "/api/fax/queues", "title": "Creates a new Queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/queues -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateQueues", "group": "Fax_Queues", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" }, { "group": "Body", "type": "Integer", "optional": false, "field": "timeout", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"rrmemory\"", "\"beepall\"", "\"roundrobin\"" ], "optional": false, "field": "strategy", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "lastAgent", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxQueue/index.js", "groupTitle": "Fax_Queues" }, { "type": "delete", "url": "/api/fax/queues/{id}", "title": "Deletes a Queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/queues/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteQueues", "group": "Fax_Queues", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxQueue/index.js", "groupTitle": "Fax_Queues" }, { "type": "get", "url": "/api/fax/queues/describe", "title": "Gets table info about Queues", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/queues/describe -v -u {name}:{password}", "type": "json" } ], "name": "DescribeQueues", "group": "Fax_Queues", "description": "

Motion will return a HTTP status code 200 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxQueue/index.js", "groupTitle": "Fax_Queues" }, { "type": "get", "url": "/api/fax/queues/{id}/users", "title": "Gets queue agents", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/queues/{id}/users -v -u {name}:{password} -X POST", "type": "json" } ], "name": "GetAgents", "group": "Fax_Queues", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxQueue/index.js", "groupTitle": "Fax_Queues" }, { "type": "get", "url": "/api/fax/queues/{id}/members", "title": "GetMembers", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/queues/{id}/members -v -u {name}:{password}", "type": "json" } ], "name": "GetMembers", "group": "Fax_Queues", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxQueue/index.js", "groupTitle": "Fax_Queues" }, { "type": "get", "url": "/api/fax/queues", "title": "Gets a list of Queues", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/queues -v -u {name}:{password}", "type": "json" } ], "name": "GetQueues", "group": "Fax_Queues", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/fax/queues?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/fax/queues?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/fax/queues?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/fax/queues?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/fax/queues?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/faxQueue/index.js", "groupTitle": "Fax_Queues" }, { "type": "get", "url": "/api/fax/queues/{id}/teams", "title": "Gets queues list", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/queues/{id}/teams -v -u {name}:{password}", "type": "json" } ], "name": "GetTeams", "group": "Fax_Queues", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxQueue/index.js", "groupTitle": "Fax_Queues" }, { "type": "delete", "url": "/api/fax/queues/{id}/users", "title": "Removes agents from a queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/queues/{id}/users?ids=1&ids=2 -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "RemoveAgents", "group": "Fax_Queues", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxQueue/index.js", "groupTitle": "Fax_Queues" }, { "type": "get", "url": "/api/fax/queues/{id}", "title": "Gets a single Queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/queues/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowQueues", "group": "Fax_Queues", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxQueue/index.js", "groupTitle": "Fax_Queues" }, { "type": "put", "url": "/api/fax/queues/{id}", "title": "Update an existing Queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/queues/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateQueues", "group": "Fax_Queues", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxQueue/index.js", "groupTitle": "Fax_Queues" }, { "type": "post", "url": "/api/integrations/freshdesk/accounts", "title": "Creates a new Freshdesk Account", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/freshdesk/accounts -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateFreshdesk_Accounts", "group": "Freshdesk_Accounts", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": true, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "username", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "apiKey", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "remoteUri", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "serverUrl", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intFreshdeskAccount/index.js", "groupTitle": "Freshdesk_Accounts" }, { "type": "delete", "url": "/api/integrations/freshdesk/accounts/{id}", "title": "Deletes a Freshdesk Account", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/freshdesk/accounts/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteFreshdesk_Accounts", "group": "Freshdesk_Accounts", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intFreshdeskAccount/index.js", "groupTitle": "Freshdesk_Accounts" }, { "type": "get", "url": "/api/integrations/freshdesk/accounts", "title": "Gets a list of Freshdesk Accounts", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/freshdesk/accounts -v -u {name}:{password}", "type": "json" } ], "name": "GetFreshdesk_Accounts", "group": "Freshdesk_Accounts", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/integrations/freshdesk/accounts?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/integrations/freshdesk/accounts?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/integrations/freshdesk/accounts?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/integrations/freshdesk/accounts?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/integrations/freshdesk/accounts?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/intFreshdeskAccount/index.js", "groupTitle": "Freshdesk_Accounts" }, { "type": "get", "url": "/api/integrations/freshdesk/accounts/{id}", "title": "Gets a single Freshdesk Account", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/freshdesk/accounts/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowFreshdesk_Accounts", "group": "Freshdesk_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intFreshdeskAccount/index.js", "groupTitle": "Freshdesk_Accounts" }, { "type": "post", "url": "/api/integrations/freshdesk/accounts/{id}/configurations", "title": "Creates new configuration", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/freshdesk/accounts/{id}/configurations -d '{\"name\": \"conf1\"}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addConfiguration", "group": "Freshdesk_Accounts", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intFreshdeskAccount/index.js", "groupTitle": "Freshdesk_Accounts" }, { "type": "get", "url": "/api/integrations/freshdesk/accounts/{id}/configurations", "title": "Gets account configurations", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/freshdesk/accounts/{id}/configurations -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getConfigurations", "group": "Freshdesk_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intFreshdeskAccount/index.js", "groupTitle": "Freshdesk_Accounts" }, { "type": "get", "url": "/api/integrations/freshdesk/accounts/{id}/fields", "title": "Gets account fields", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/freshdesk/accounts/{id}/fields -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getFields", "group": "Freshdesk_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intFreshdeskAccount/index.js", "groupTitle": "Freshdesk_Accounts" }, { "type": "put", "url": "/api/integrations/freshdesk/accounts/{id}", "title": "Update an existing Freshdesk Account", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/freshdesk/accounts/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateFreshdesk_Accounts", "group": "Freshdesk_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intFreshdeskAccount/index.js", "groupTitle": "Freshdesk_Accounts" }, { "type": "post", "url": "/api/integrations/freshdesk/configurations", "title": "Creates a new Freshdesk Configuration", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/freshdesk/configurations -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateFreshdesk_Configurations", "group": "Freshdesk_Configurations", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": true, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intFreshdeskConfiguration/index.js", "groupTitle": "Freshdesk_Configurations" }, { "type": "delete", "url": "/api/integrations/freshdesk/configurations/{id}", "title": "Deletes a Freshdesk Configuration", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/freshdesk/configurations/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteFreshdesk_Configurations", "group": "Freshdesk_Configurations", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intFreshdeskConfiguration/index.js", "groupTitle": "Freshdesk_Configurations" }, { "type": "get", "url": "/api/integrations/freshdesk/configurations", "title": "Gets a list of Freshdesk Configurations", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/freshdesk/configurations -v -u {name}:{password}", "type": "json" } ], "name": "GetFreshdesk_Configurations", "group": "Freshdesk_Configurations", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/integrations/freshdesk/configurations?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/integrations/freshdesk/configurations?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/integrations/freshdesk/configurations?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/integrations/freshdesk/configurations?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/integrations/freshdesk/configurations?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/intFreshdeskConfiguration/index.js", "groupTitle": "Freshdesk_Configurations" }, { "type": "get", "url": "/api/integrations/freshdesk/configurations/{id}", "title": "Gets a single Freshdesk Configuration", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/freshdesk/configurations/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowFreshdesk_Configurations", "group": "Freshdesk_Configurations", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intFreshdeskConfiguration/index.js", "groupTitle": "Freshdesk_Configurations" }, { "type": "get", "url": "/api/integrations/freshdesk/configurations/{id}/descriptions", "title": "Gets configurations descriptions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/freshdesk/configurations/{id}/descriptions -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getDescriptions", "group": "Freshdesk_Configurations", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intFreshdeskConfiguration/index.js", "groupTitle": "Freshdesk_Configurations" }, { "type": "get", "url": "/api/integrations/freshdesk/configurations/{id}/fields", "title": "Gets configurations fields", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/freshdesk/configurations/{id}/fields -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getFields", "group": "Freshdesk_Configurations", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intFreshdeskConfiguration/index.js", "groupTitle": "Freshdesk_Configurations" }, { "type": "get", "url": "/api/integrations/freshdesk/configurations/{id}/subjects", "title": "Gets configurations subjects", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/freshdesk/configurations/{id}/subjects -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getSubjects", "group": "Freshdesk_Configurations", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intFreshdeskConfiguration/index.js", "groupTitle": "Freshdesk_Configurations" }, { "type": "get", "url": "/api/integrations/freshdesk/configurations/{id}/tags", "title": "Gets configurations tags", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/freshdesk/configurations/{id}/tags -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getTags", "group": "Freshdesk_Configurations", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intFreshdeskConfiguration/index.js", "groupTitle": "Freshdesk_Configurations" }, { "type": "post", "url": "/api/integrations/freshdesk/configurations/{id}/tags", "title": "Sets new tags", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/freshdesk/configurations/{id}/tags -d '{\"ids\": [1,12]}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "setTags", "group": "Freshdesk_Configurations", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intFreshdeskConfiguration/index.js", "groupTitle": "Freshdesk_Configurations" }, { "type": "put", "url": "/api/integrations/freshdesk/configurations/{id}", "title": "Update an existing Freshdesk Configuration", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/freshdesk/configurations/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateFreshdesk_Configurations", "group": "Freshdesk_Configurations", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intFreshdeskConfiguration/index.js", "groupTitle": "Freshdesk_Configurations" }, { "type": "post", "url": "/api/integrations/freshdesk/fields", "title": "Creates a new Freshdesk Field", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/freshdesk/fields -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateFreshdesk_Fields", "group": "Freshdesk_Fields", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "allowedValues": [ "\"string\"", "\"variable\"", "\"customVariable\"", "\"keyValue\"" ], "optional": true, "field": "type", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "content", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "key", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"string\"", "\"variable\"", "\"customVariable\"" ], "optional": true, "field": "keyType", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "keyContent", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "idField", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "nameField", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "customField", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "variableName", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intFreshdeskField/index.js", "groupTitle": "Freshdesk_Fields" }, { "type": "delete", "url": "/api/integrations/freshdesk/fields/{id}", "title": "Deletes a Freshdesk Field", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/freshdesk/fields/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteFreshdesk_Fields", "group": "Freshdesk_Fields", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intFreshdeskField/index.js", "groupTitle": "Freshdesk_Fields" }, { "type": "get", "url": "/api/integrations/freshdesk/fields", "title": "Gets a list of Freshdesk Fields", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/freshdesk/fields -v -u {name}:{password}", "type": "json" } ], "name": "GetFreshdesk_Fields", "group": "Freshdesk_Fields", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/integrations/freshdesk/fields?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/integrations/freshdesk/fields?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/integrations/freshdesk/fields?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/integrations/freshdesk/fields?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/integrations/freshdesk/fields?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/intFreshdeskField/index.js", "groupTitle": "Freshdesk_Fields" }, { "type": "get", "url": "/api/integrations/freshdesk/fields/{id}", "title": "Gets a single Freshdesk Field", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/freshdesk/fields/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowFreshdesk_Fields", "group": "Freshdesk_Fields", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intFreshdeskField/index.js", "groupTitle": "Freshdesk_Fields" }, { "type": "put", "url": "/api/integrations/freshdesk/fields/{id}", "title": "Update an existing Freshdesk Field", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/freshdesk/fields/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateFreshdesk_Fields", "group": "Freshdesk_Fields", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intFreshdeskField/index.js", "groupTitle": "Freshdesk_Fields" }, { "type": "post", "url": "/api/campaigns/{id}/blacklists", "title": "Add blacklists to an IVR campaign", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/campaigns/{id}/blacklists -d '{\"ids\": [1,2]}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "AddBlackLists", "group": "IVR_Campaigns", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/campaign/index.js", "groupTitle": "IVR_Campaigns" }, { "type": "post", "url": "/api/campaigns/{id}/lists", "title": "Add lists to an IVR campaign", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/campaigns/{id}/lists -d '{\"ids\": [1,2]}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "AddLists", "group": "IVR_Campaigns", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/campaign/index.js", "groupTitle": "IVR_Campaigns" }, { "type": "post", "url": "/api/campaigns", "title": "Creates a new IVR Campaign", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/campaigns -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateIVR_Campaigns", "group": "IVR_Campaigns", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "name", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"ivr\"" ], "optional": false, "field": "type", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "active", "description": "

Active/Disactive Campaign

" }, { "group": "Body", "type": "Integer", "optional": true, "field": "limitCalls", "description": "

Max 200 calls.

" }, { "group": "Body", "type": "String", "optional": true, "field": "dialOriginateCallerIdName", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "dialOriginateCallerIdNumber", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "dialOriginateTimeout", "description": "

Originate Timeout Seconds (min:1, max:999)

" }, { "group": "Body", "type": "Integer", "optional": true, "field": "dialCongestionMaxRetry", "description": "

#Congestion Retry (min:1, max:999)

" }, { "group": "Body", "type": "Integer", "optional": true, "field": "dialCongestionRetryFrequency", "description": "

Congestion Retry Frequency Minutes (min:1, max:99999)

" }, { "group": "Body", "type": "Integer", "optional": true, "field": "dialBusyMaxRetry", "description": "

#Busy Retry (min:1, max:999)

" }, { "group": "Body", "type": "Integer", "optional": true, "field": "dialBusyRetryFrequency", "description": "

Busy Retry Frequency Minutes (min:1, max:99999)

" }, { "group": "Body", "type": "Integer", "optional": true, "field": "dialNoAnswerMaxRetry", "description": "

#NoAnswer Retry (min:1, max:999)

" }, { "group": "Body", "type": "Integer", "optional": true, "field": "dialNoAnswerRetryFrequency", "description": "

NoAnswer Retry Frequency Minutes (min:1, max:99999)

" }, { "group": "Body", "type": "Integer", "optional": true, "field": "dialGlobalMaxRetry", "description": "

#Global Max Retry (min:1, max:999)

" }, { "group": "Body", "type": "String", "optional": true, "field": "dialTimezone", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "dialGlobalInterval", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"always\"", "\"never\"", "\"onlyIfOpen\"" ], "optional": true, "field": "dialCheckDuplicateType", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "dialAMDActive", "description": "

Active/Disactive AMD

" }, { "group": "Body", "type": "Integer", "optional": true, "field": "dialAMDInitialSilence", "description": "

#AMD Initial Silence

" }, { "group": "Body", "type": "Integer", "optional": true, "field": "dialAMDGreeting", "description": "

#AMD Greeting

" }, { "group": "Body", "type": "Integer", "optional": true, "field": "dialAMDAfterGreetingSilence", "description": "

#AMD After Greeting Silence

" }, { "group": "Body", "type": "Integer", "optional": true, "field": "dialAMDTotalAnalysisTime", "description": "

#AMD Total Analysis Time

" }, { "group": "Body", "type": "Integer", "optional": true, "field": "dialAMDMinWordLength", "description": "

#AMD Min Word Length

" }, { "group": "Body", "type": "Integer", "optional": true, "field": "dialAMDBetweenWordsSilence", "description": "

#AMD Between Words Silence

" }, { "group": "Body", "type": "Integer", "optional": true, "field": "dialAMDMaximumNumberOfWords", "description": "

#AMD Maximum Number Of Words

" }, { "group": "Body", "type": "Integer", "optional": true, "field": "dialAMDSilenceThreshold", "description": "

#AMD Silence Threshold (min:0, max:32767)

" }, { "group": "Body", "type": "Integer", "optional": true, "field": "dialAMDMaximumWordLength", "description": "

#AMD Maximum Word Length

" }, { "group": "Body", "type": "String", "allowedValues": [ "\"DESC\"", "\"ASC\"" ], "optional": true, "field": "dialOrderByScheduledAt", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/campaign/index.js", "groupTitle": "IVR_Campaigns" }, { "type": "delete", "url": "/api/campaigns/{id}", "title": "Deletes a IVR Campaign", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/campaigns/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteIVR_Campaigns", "group": "IVR_Campaigns", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/campaign/index.js", "groupTitle": "IVR_Campaigns" }, { "type": "get", "url": "/api/campaigns/{id}/blacklists", "title": "Get IVR campaign blacklists", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/campaigns/{id}/blacklists -v -u {name}:{password} -X GET", "type": "json" } ], "name": "GetBlackLists", "group": "IVR_Campaigns", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/campaign/index.js", "groupTitle": "IVR_Campaigns" }, { "type": "get", "url": "/api/campaigns/{id}/finals", "title": "Gets IVR campaign hopper finals", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/campaigns/{id}/hopper_finals -v -u {name}:{password} -X GET", "type": "json" } ], "name": "GetHopperFinals", "group": "IVR_Campaigns", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/campaign/index.js", "groupTitle": "IVR_Campaigns" }, { "type": "get", "url": "/api/campaigns/{id}/hopper_histories", "title": "Gets IVR campaign hopper histories", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/campaigns/{id}/hopper_histories -v -u {name}:{password} -X GET", "type": "json" } ], "name": "GetHopperHistories", "group": "IVR_Campaigns", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/campaign/index.js", "groupTitle": "IVR_Campaigns" }, { "type": "get", "url": "/api/campaigns/{id}/hoppers", "title": "Gets IVR campaign hoppers", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/campaigns/{id}/hoppers -v -u {name}:{password} -X GET", "type": "json" } ], "name": "GetHoppers", "group": "IVR_Campaigns", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/campaign/index.js", "groupTitle": "IVR_Campaigns" }, { "type": "get", "url": "/api/campaigns", "title": "Gets a list of IVR Campaigns", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/campaigns -v -u {name}:{password}", "type": "json" } ], "name": "GetIVR_Campaigns", "group": "IVR_Campaigns", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/campaigns?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/campaigns?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/campaigns?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/campaigns?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/campaigns?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/campaign/index.js", "groupTitle": "IVR_Campaigns" }, { "type": "get", "url": "/api/campaigns/{id}/lists", "title": "Get IVR campaign lists", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/campaigns/{id}/lists -v -u {name}:{password} -X GET", "type": "json" } ], "name": "GetLists", "group": "IVR_Campaigns", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/campaign/index.js", "groupTitle": "IVR_Campaigns" }, { "type": "delete", "url": "/api/campaigns/{id}/blacklists", "title": "Remove blacklists from an IVR Campaign", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/campaigns/{id}/blacklists?ids=1&ids=2 -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "RemoveBlackLists", "group": "IVR_Campaigns", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/campaign/index.js", "groupTitle": "IVR_Campaigns" }, { "type": "delete", "url": "/api/campaigns/{id}/lists", "title": "Remove lists from an IVR Campaign", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/campaigns/{id}/lists?ids=1&ids=2 -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "RemoveLists", "group": "IVR_Campaigns", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/campaign/index.js", "groupTitle": "IVR_Campaigns" }, { "type": "get", "url": "/api/campaigns/{id}", "title": "Gets a single IVR Campaign", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/campaigns/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowIVR_Campaigns", "group": "IVR_Campaigns", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/campaign/index.js", "groupTitle": "IVR_Campaigns" }, { "type": "get", "url": "/api/campaigns/{id}/blacks", "title": "Gets IVR campaign hopper blacks", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/campaigns/{id}/hopper_black -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getHopperBlacks", "group": "IVR_Campaigns", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/campaign/index.js", "groupTitle": "IVR_Campaigns" }, { "type": "put", "url": "/api/campaigns/{id}", "title": "Update an existing IVR Campaign", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/campaigns/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateIVR_Campaigns", "group": "IVR_Campaigns", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/campaign/index.js", "groupTitle": "IVR_Campaigns" }, { "type": "post", "url": "/api/integrations/reports", "title": "Creates a new Integration Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/reports -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateIntegration_Reports", "group": "Integration_Reports", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": true, "field": "integration", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "eventChannel", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "exitStatus", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "ticketId", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "integrationId", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "contacts", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "uniqueid", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "calleridnum", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "calleridname", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "queue", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "interface", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "membername", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "agentcalledAt", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "agentconnectAt", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "holdtime", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "agentcomplete", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "agentcompleteAt", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "talktime", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "agentacw", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "acwtime", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "reason", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "agentringnoanswer", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "agentringnoanswerAt", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "agentdump", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "agentdumpAt", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "lastevent", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "channel", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "channelstate", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "channelstatedesc", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "connectedlinenum", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "connectedlinename", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "language", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "accountcode", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "context", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "exten", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "priority", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "destchannel", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "destchannelstate", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "destchannelstatedesc", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "destcalleridnum", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "destcalleridname", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "destconnectedlinenum", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "destconnectedlinename", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "destlanguage", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "destaccountcode", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "destcontext", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "destexten", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "destpriority", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "destuniqueid", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "messageId", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "inReplyTo", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "subject", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "from", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "to", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "cc", "description": "" }, { "group": "Body", "type": "Text", "optional": true, "field": "attachment", "description": "" }, { "group": "Body", "type": "Text", "optional": true, "field": "html", "description": "" }, { "group": "Body", "type": "Text", "optional": true, "field": "text", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"SENT\"", "\"SENDING\"", "\"RECEIVED\"", "\"FAILED\"" ], "optional": true, "field": "status", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "url", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "app", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "appdata", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "projectId", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/integrationReport/index.js", "groupTitle": "Integration_Reports" }, { "type": "delete", "url": "/api/integrations/reports/{id}", "title": "Deletes a Integration Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/reports/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteIntegration_Reports", "group": "Integration_Reports", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/integrationReport/index.js", "groupTitle": "Integration_Reports" }, { "type": "get", "url": "/api/integrations/reports/describe", "title": "Gets table info about Integration Reports", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/reports/describe -v -u {name}:{password}", "type": "json" } ], "name": "DescribeIntegration_Reports", "group": "Integration_Reports", "description": "

Motion will return a HTTP status code 200 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/integrationReport/index.js", "groupTitle": "Integration_Reports" }, { "type": "get", "url": "/api/integrations/reports", "title": "Gets a list of Integration Reports", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/reports -v -u {name}:{password}", "type": "json" } ], "name": "GetIntegration_Reports", "group": "Integration_Reports", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/integrations/reports?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/integrations/reports?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/integrations/reports?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/integrations/reports?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/integrations/reports?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/integrationReport/index.js", "groupTitle": "Integration_Reports" }, { "type": "get", "url": "/api/integrations/reports/{id}", "title": "Gets a single Integration Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/reports/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowIntegration_Reports", "group": "Integration_Reports", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/integrationReport/index.js", "groupTitle": "Integration_Reports" }, { "type": "put", "url": "/api/integrations/reports/{id}", "title": "Update an existing Integration Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/reports/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateIntegration_Reports", "group": "Integration_Reports", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/integrationReport/index.js", "groupTitle": "Integration_Reports" }, { "type": "post", "url": "/api/intervals", "title": "Creates a new Interval", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/intervals -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateIntervals", "group": "Intervals", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": true, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "interval", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/interval/index.js", "groupTitle": "Intervals" }, { "type": "delete", "url": "/api/intervals/{id}", "title": "Deletes a Interval", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/intervals/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteIntervals", "group": "Intervals", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/interval/index.js", "groupTitle": "Intervals" }, { "type": "get", "url": "/api/intervals", "title": "Gets a list of Intervals", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/intervals -v -u {name}:{password}", "type": "json" } ], "name": "GetIntervals", "group": "Intervals", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/intervals?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/intervals?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/intervals?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/intervals?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/intervals?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/interval/index.js", "groupTitle": "Intervals" }, { "type": "get", "url": "/api/intervals/{id}", "title": "Gets a single Interval", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/intervals/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowIntervals", "group": "Intervals", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/interval/index.js", "groupTitle": "Intervals" }, { "type": "post", "url": "/api/intervals/{id}/sub_intervals", "title": "Creates a new sub interval", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/intervals/{id}/sub_intervals -d '{\"interval\": \"00:00-08:30,mon-fri,*,*\"}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addInterval", "group": "Intervals", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/interval/index.js", "groupTitle": "Intervals" }, { "type": "post", "url": "/api/intervals/{id}/sub_intervals/create_many", "title": "Create new sub intervals set", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/intervals/{id}/sub_intervals -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addIntervals", "group": "Intervals", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/interval/index.js", "groupTitle": "Intervals" }, { "type": "get", "url": "/api/intervals/{id}/sub_intervals", "title": "Get sub intervals set", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/intervals/{id}/sub_intervals -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getIntervals", "group": "Intervals", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/interval/index.js", "groupTitle": "Intervals" }, { "type": "put", "url": "/api/intervals/{id}", "title": "Update an existing Interval", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/intervals/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateIntervals", "group": "Intervals", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/interval/index.js", "groupTitle": "Intervals" }, { "type": "post", "url": "/api/jira", "title": "Creates a new issue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/jira -d '{\"key\": \"Bug\", \"description\": \"I can't do it!\"}' \\\n -H \"Content-Type: application/json\" -X POST -v -u {name}:{password}", "type": "json" } ], "name": "Creates_Issue", "group": "Issue", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "allowedValues": [ "\"Bug\"" ], "optional": true, "field": "issuetype", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "summary", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "description", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/jira/index.js", "groupTitle": "Issue" }, { "type": "post", "url": "/api/jscripty/answers/reports", "title": "Creates a new Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/jscripty/answers/reports -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateReports", "group": "JscriptyAnswerReport", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": true, "field": "question", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "answer", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "membername", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "projectname", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "queue", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "uniqueid", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "calleridname", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "calleridnum", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "questionId", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/jscriptyAnswerReport/index.js", "groupTitle": "JscriptyAnswerReport" }, { "type": "delete", "url": "/api/jscripty/answers/reports/{id}", "title": "Deletes a Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/jscripty/answers/reports/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteReports", "group": "JscriptyAnswerReport", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/jscriptyAnswerReport/index.js", "groupTitle": "JscriptyAnswerReport" }, { "type": "get", "url": "/api/jscripty/answers/reports/describe", "title": "Gets table info about Reports", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/jscripty/answers/reports/describe -v -u {name}:{password}", "type": "json" } ], "name": "DescribeReports", "group": "JscriptyAnswerReport", "description": "

Motion will return a HTTP status code 200 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/jscriptyAnswerReport/index.js", "groupTitle": "JscriptyAnswerReport" }, { "type": "get", "url": "/api/jscripty/answers/reports", "title": "Gets a list of Reports", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/jscripty/answers/reports -v -u {name}:{password}", "type": "json" } ], "name": "GetReports", "group": "JscriptyAnswerReport", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/jscripty/answers/reports?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/jscripty/answers/reports?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/jscripty/answers/reports?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/jscripty/answers/reports?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/jscripty/answers/reports?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/jscriptyAnswerReport/index.js", "groupTitle": "JscriptyAnswerReport" }, { "type": "get", "url": "/api/jscripty/answers/reports/{id}", "title": "Gets a single Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/jscripty/answers/reports/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowReports", "group": "JscriptyAnswerReport", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/jscriptyAnswerReport/index.js", "groupTitle": "JscriptyAnswerReport" }, { "type": "put", "url": "/api/jscripty/answers/reports/{id}", "title": "Update an existing Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/jscripty/answers/reports/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateReports", "group": "JscriptyAnswerReport", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/jscriptyAnswerReport/index.js", "groupTitle": "JscriptyAnswerReport" }, { "type": "post", "url": "/api/jscripty/questions/reports", "title": "Creates a new Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/jscripty/questions/reports -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateReports", "group": "JscriptyQuestionReport", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": true, "field": "question", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "answer", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "membername", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "projectname", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "queue", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "uniqueid", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "calleridname", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "calleridnum", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "questionId", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/jscriptyQuestionReport/index.js", "groupTitle": "JscriptyQuestionReport" }, { "type": "delete", "url": "/api/jscripty/questions/reports/{id}", "title": "Deletes a Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/jscripty/questions/reports/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteReports", "group": "JscriptyQuestionReport", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/jscriptyQuestionReport/index.js", "groupTitle": "JscriptyQuestionReport" }, { "type": "get", "url": "/api/jscripty/questions/reports/describe", "title": "Gets table info about Reports", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/jscripty/questions/reports/describe -v -u {name}:{password}", "type": "json" } ], "name": "DescribeReports", "group": "JscriptyQuestionReport", "description": "

Motion will return a HTTP status code 200 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/jscriptyQuestionReport/index.js", "groupTitle": "JscriptyQuestionReport" }, { "type": "get", "url": "/api/jscripty/questions/reports", "title": "Gets a list of Reports", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/jscripty/questions/reports -v -u {name}:{password}", "type": "json" } ], "name": "GetReports", "group": "JscriptyQuestionReport", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/jscripty/questions/reports?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/jscripty/questions/reports?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/jscripty/questions/reports?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/jscripty/questions/reports?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/jscripty/questions/reports?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/jscriptyQuestionReport/index.js", "groupTitle": "JscriptyQuestionReport" }, { "type": "get", "url": "/api/jscripty/questions/reports/{id}", "title": "Gets a single Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/jscripty/questions/reports/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowReports", "group": "JscriptyQuestionReport", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/jscriptyQuestionReport/index.js", "groupTitle": "JscriptyQuestionReport" }, { "type": "put", "url": "/api/jscripty/questions/reports/{id}", "title": "Update an existing Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/jscripty/questions/reports/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateReports", "group": "JscriptyQuestionReport", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/jscriptyQuestionReport/index.js", "groupTitle": "JscriptyQuestionReport" }, { "type": "post", "url": "/api/jscripty/sessions/reports", "title": "Creates a new Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/jscripty/sessions/reports -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateReports", "group": "JscriptySessionReport", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": true, "field": "starttime", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "endtime", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "membername", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "projectname", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "queue", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "uniqueid", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "calleridname", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "calleridnum", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "completed", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/jscriptySessionReport/index.js", "groupTitle": "JscriptySessionReport" }, { "type": "delete", "url": "/api/jscripty/sessions/reports/{id}", "title": "Deletes a Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/jscripty/sessions/reports/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteReports", "group": "JscriptySessionReport", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/jscriptySessionReport/index.js", "groupTitle": "JscriptySessionReport" }, { "type": "get", "url": "/api/jscripty/sessions/reports/describe", "title": "Gets table info about Reports", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/jscripty/sessions/reports/describe -v -u {name}:{password}", "type": "json" } ], "name": "DescribeReports", "group": "JscriptySessionReport", "description": "

Motion will return a HTTP status code 200 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/jscriptySessionReport/index.js", "groupTitle": "JscriptySessionReport" }, { "type": "get", "url": "/api/jscripty/sessions/reports", "title": "Gets a list of Reports", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/jscripty/sessions/reports -v -u {name}:{password}", "type": "json" } ], "name": "GetReports", "group": "JscriptySessionReport", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/jscripty/sessions/reports?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/jscripty/sessions/reports?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/jscripty/sessions/reports?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/jscripty/sessions/reports?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/jscripty/sessions/reports?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/jscriptySessionReport/index.js", "groupTitle": "JscriptySessionReport" }, { "type": "get", "url": "/api/jscripty/sessions/reports/{id}", "title": "Gets a single Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/jscripty/sessions/reports/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowReports", "group": "JscriptySessionReport", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/jscriptySessionReport/index.js", "groupTitle": "JscriptySessionReport" }, { "type": "get", "url": "/api/jscripty/sessions/reports/{id}/questions", "title": "Gets Jscripty Session questions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/jscripty/sessions/reports/{id}/questions -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getQuestions", "group": "JscriptySessionReport", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/jscriptySessionReport/index.js", "groupTitle": "JscriptySessionReport" }, { "type": "put", "url": "/api/jscripty/sessions/reports/{id}", "title": "Update an existing Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/jscripty/sessions/reports/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateReports", "group": "JscriptySessionReport", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/jscriptySessionReport/index.js", "groupTitle": "JscriptySessionReport" }, { "type": "post", "url": "/api/jscripty/projects/clone", "title": "Clone an existing Project", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/jscripty/projects/clone -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CloneProjects", "group": "Jscripty_Projects", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/jscriptyProject/index.js", "groupTitle": "Jscripty_Projects" }, { "type": "post", "url": "/api/jscripty/projects", "title": "Creates a new Project", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/jscripty/projects -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateProjects", "group": "Jscripty_Projects", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": true, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" }, { "group": "Body", "type": "Text", "optional": true, "field": "formData", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "enableUncompleteSave", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/jscriptyProject/index.js", "groupTitle": "Jscripty_Projects" }, { "type": "delete", "url": "/api/jscripty/projects/{id}", "title": "Deletes a Project", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/jscripty/projects/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteProjects", "group": "Jscripty_Projects", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/jscriptyProject/index.js", "groupTitle": "Jscripty_Projects" }, { "type": "get", "url": "/api/jscripty/projects", "title": "Gets a list of Projects", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/jscripty/projects -v -u {name}:{password}", "type": "json" } ], "name": "GetProjects", "group": "Jscripty_Projects", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/jscripty/projects?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/jscripty/projects?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/jscripty/projects?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/jscripty/projects?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/jscripty/projects?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/jscriptyProject/index.js", "groupTitle": "Jscripty_Projects" }, { "type": "get", "url": "/api/jscripty/projects/{id}", "title": "Gets a single Project", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/jscripty/projects/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowProjects", "group": "Jscripty_Projects", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/jscriptyProject/index.js", "groupTitle": "Jscripty_Projects" }, { "type": "get", "url": "/api/jscripty/projects/{id}/answers", "title": "Gets jscripty project answers", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/jscripty/projects/{id}/answers -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getAnswers", "group": "Jscripty_Projects", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/jscriptyProject/index.js", "groupTitle": "Jscripty_Projects" }, { "type": "get", "url": "/api/jscripty/projects/{id}/sessions", "title": "Gets jscripty project sessions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/jscripty/projects/{id}/sessions -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getSessions", "group": "Jscripty_Projects", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/jscriptyProject/index.js", "groupTitle": "Jscripty_Projects" }, { "type": "get", "url": "/api/jscripty/projects/{id}/summary", "title": "Gets jscripty project summary", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/jscripty/projects/{id}/summary -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getSummary", "group": "Jscripty_Projects", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/jscriptyProject/index.js", "groupTitle": "Jscripty_Projects" }, { "type": "put", "url": "/api/jscripty/projects/{id}", "title": "Update an existing Project", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/jscripty/projects/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateProjects", "group": "Jscripty_Projects", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/jscriptyProject/index.js", "groupTitle": "Jscripty_Projects" }, { "type": "get", "url": "/api/license", "title": "Gets License Info", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/license -v -u {name}:{password} -X GET", "type": "json" } ], "name": "index", "group": "License", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/license/index.js", "groupTitle": "License" }, { "type": "put", "url": "/api/license/{id}", "title": "Update an existing License", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/license/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateLiense", "group": "License", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/license/index.js", "groupTitle": "License" }, { "type": "post", "url": "/api/mail/accounts/{id}/in_servers", "title": "Creates a new IMAP server", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/accounts/{id}/in_servers -d '{\"host\": \"host\", \"username\": \"username\", \"password\": \"password\", \"...\": \"...\"}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "AddImap", "group": "Mail_Accounts", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "host", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "authentication", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "user", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "password", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "port", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "tls", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "mailbox", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "connTimeout", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "authTimeout", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "service", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailAccount/index.js", "groupTitle": "Mail_Accounts" }, { "type": "post", "url": "/api/mail/accounts/{id}/out_servers", "title": "Creates a new SMTP server", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/accounts/{id}/out_servers -d '{\"host\": \"host\", \"username\": \"username\", \"password\": \"password\", \"...\": \"...\"}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "AddSmtp", "group": "Mail_Accounts", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "host", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "user", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "pass", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "port", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "secure", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "service", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "authentication", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailAccount/index.js", "groupTitle": "Mail_Accounts" }, { "type": "delete", "url": "/api/mail/accounts/{id}", "title": "Deletes a Account", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/accounts/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteAccounts", "group": "Mail_Accounts", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailAccount/index.js", "groupTitle": "Mail_Accounts" }, { "type": "get", "url": "/api/mail/accounts/describe", "title": "Gets table info about Accounts", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/accounts/describe -v -u {name}:{password}", "type": "json" } ], "name": "DescribeAccounts", "group": "Mail_Accounts", "description": "

Motion will return a HTTP status code 200 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailAccount/index.js", "groupTitle": "Mail_Accounts" }, { "type": "get", "url": "/api/mail/accounts", "title": "Gets a list of Accounts", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/accounts -v -u {name}:{password}", "type": "json" } ], "name": "GetAccounts", "group": "Mail_Accounts", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/mail/accounts?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/mail/accounts?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/mail/accounts?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/mail/accounts?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/mail/accounts?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/mailAccount/index.js", "groupTitle": "Mail_Accounts" }, { "type": "get", "url": "/api/mail/accounts/{id}/in_servers", "title": "Gets account IMAP server", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/accounts/{id}/in_servers -v -u {name}:{password} -X GET", "type": "json" } ], "name": "GetImap", "group": "Mail_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailAccount/index.js", "groupTitle": "Mail_Accounts" }, { "type": "get", "url": "/api/mail/accounts/{id}/out_servers", "title": "Gets account SMTP server", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/accounts/{id}/out_servers -v -u {name}:{password} -X GET", "type": "json" } ], "name": "GetSmtp", "group": "Mail_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailAccount/index.js", "groupTitle": "Mail_Accounts" }, { "type": "delete", "url": "/api/mail/accounts/{id}/in_servers", "title": "Removes IMAP server from an account", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/accounts/{id}/in_servers -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "RemoveImmap", "group": "Mail_Accounts", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailAccount/index.js", "groupTitle": "Mail_Accounts" }, { "type": "delete", "url": "/api/mail/accounts/{id}/out_servers", "title": "Removes SMTP server from an account", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/accounts/{id}/out_servers -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "RemoveSmtp", "group": "Mail_Accounts", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailAccount/index.js", "groupTitle": "Mail_Accounts" }, { "type": "get", "url": "/api/mail/accounts/{id}", "title": "Gets a single Account", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/accounts/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowAccounts", "group": "Mail_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailAccount/index.js", "groupTitle": "Mail_Accounts" }, { "type": "put", "url": "/api/mail/messages/{id}/accept", "title": "Accepts message", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/messages/{id}/accept \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "acceptMessage", "group": "Mail_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailMessage/index.js", "groupTitle": "Mail_Accounts" }, { "type": "post", "url": "/api/mail/accounts/{id}/canned_answers", "title": "Creates new canned answer", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/accounts/{id}/canned_answers -d '{\"name\": \"vip\"}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addAnswer", "group": "Mail_Accounts", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "key", "description": "" }, { "group": "Body", "type": "Text", "optional": false, "field": "value", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailAccount/index.js", "groupTitle": "Mail_Accounts" }, { "type": "post", "url": "/api/mail/accounts/{id}/applications", "title": "Creates new applications", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/accounts/{id}/applications -d '[{\"app\": \"queue\", \"...\": \"...\"}]' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addApplications", "group": "Mail_Accounts", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "Integer", "optional": false, "field": "priority", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "app", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "appdata", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "interval", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailAccount/index.js", "groupTitle": "Mail_Accounts" }, { "type": "post", "url": "/api/mail/accounts/{id}/dispositions", "title": "Creates new disposition", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/accounts/{id}/dispositions -d '{\"name\": \"vip\"}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addDisposition", "group": "Mail_Accounts", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "name", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailAccount/index.js", "groupTitle": "Mail_Accounts" }, { "type": "post", "url": "/api/mail/accounts/{id}/dispositions", "title": "Creates many dispositions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/accounts/{id}/dispositions -d '[{\"name\": \"vip\"}]' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addDispositions", "group": "Mail_Accounts", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "name", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailAccount/index.js", "groupTitle": "Mail_Accounts" }, { "type": "post", "url": "/api/mail/accounts/{id}/interactions", "title": "Creates new interactions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/accounts/{id}/interactions -d '[{\"subject\": \"My printer is on fire!\", \"...\": \"...\"}]' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addInteraction", "group": "Mail_Accounts", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "Boolean", "optional": true, "field": "closed", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "closedAt", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "disposition", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "note", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "inReplyTo", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "to", "description": "" }, { "group": "Body", "type": "Text", "optional": true, "field": "cc", "description": "" }, { "group": "Body", "type": "Text", "optional": true, "field": "subject", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "attach", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "read1stAt", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "substatus", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "substatusAt", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"in\"", "\"out\"" ], "optional": false, "field": "firstMsgDirection", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "lastMsgAt", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"in\"", "\"out\"" ], "optional": false, "field": "lastMsgDirection", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailAccount/index.js", "groupTitle": "Mail_Accounts" }, { "type": "post", "url": "/api/mail/accounts", "title": "Create a mail account", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/accounts \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "create", "group": "Mail_Accounts", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailAccount/index.js", "groupTitle": "Mail_Accounts" }, { "type": "get", "url": "/api/mail/accounts/{id}/canned_answers", "title": "Gets account canned answers", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/accounts/{id}/canned_answers -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getAnswers", "group": "Mail_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailAccount/index.js", "groupTitle": "Mail_Accounts" }, { "type": "get", "url": "/api/mail/accounts/{id}/applications", "title": "Gets account applications", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/accounts/{id}/applications -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getApplications", "group": "Mail_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailAccount/index.js", "groupTitle": "Mail_Accounts" }, { "type": "get", "url": "/api/mail/accounts/{id}/dispositions", "title": "Gets account dispositions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/accounts/{id}/dispositions -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getDispositions", "group": "Mail_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailAccount/index.js", "groupTitle": "Mail_Accounts" }, { "type": "get", "url": "/api/mail/accounts/{id}/interactions", "title": "Gets account interactions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/accounts/{id}/interactions -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getInteraction", "group": "Mail_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailAccount/index.js", "groupTitle": "Mail_Accounts" }, { "type": "get", "url": "/api/mail/accounts/{id}/messages", "title": "Gets account messages", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/accounts/{id}/messages -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getMessages", "group": "Mail_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailAccount/index.js", "groupTitle": "Mail_Accounts" }, { "type": "put", "url": "/api/mail/messages/{id}/reject", "title": "Rejects message", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/messages/{id}/reject \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "rejectMessage", "group": "Mail_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailMessage/index.js", "groupTitle": "Mail_Accounts" }, { "type": "post", "url": "/api/mail/accounts/{id}/send", "title": "Send new mail", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/accounts/{id}/send -d '{from: '\"John Doe\" '}' -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "sendMail", "group": "Mail_Accounts", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailAccount/index.js", "groupTitle": "Mail_Accounts" }, { "type": "put", "url": "/api/mail/accounts/{id}", "title": "Update an existing Account", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/accounts/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateAccounts", "group": "Mail_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailAccount/index.js", "groupTitle": "Mail_Accounts" }, { "type": "get", "url": "/api/mail/accounts/{id}/verify", "title": "Verify mail account", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/accounts/{id}/verify -v -u {name}:{password} -X GET", "type": "json" } ], "name": "verifySmtp", "group": "Mail_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailAccount/index.js", "groupTitle": "Mail_Accounts" }, { "type": "delete", "url": "/api/mail/applications/{id}", "title": "Deletes a Application", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/applications/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteApplications", "group": "Mail_Applications", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailApplication/index.js", "groupTitle": "Mail_Applications" }, { "type": "get", "url": "/api/mail/applications/{id}", "title": "Gets a single Application", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/applications/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowApplications", "group": "Mail_Applications", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailApplication/index.js", "groupTitle": "Mail_Applications" }, { "type": "put", "url": "/api/mail/applications/{id}", "title": "Update an existing Application", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/applications/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateApplications", "group": "Mail_Applications", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailApplication/index.js", "groupTitle": "Mail_Applications" }, { "type": "post", "url": "/api/mail/dispositions", "title": "Creates a new Disposition", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/dispositions -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateDispositions", "group": "Mail_Dispositions", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "name", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailDisposition/index.js", "groupTitle": "Mail_Dispositions" }, { "type": "delete", "url": "/api/mail/dispositions/{id}", "title": "Deletes a Disposition", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/dispositions/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteDispositions", "group": "Mail_Dispositions", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailDisposition/index.js", "groupTitle": "Mail_Dispositions" }, { "type": "get", "url": "/api/mail/dispositions/{id}", "title": "Gets a single Disposition", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/dispositions/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowDispositions", "group": "Mail_Dispositions", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailDisposition/index.js", "groupTitle": "Mail_Dispositions" }, { "type": "put", "url": "/api/mail/dispositions/{id}", "title": "Update an existing Disposition", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/dispositions/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateDispositions", "group": "Mail_Dispositions", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailDisposition/index.js", "groupTitle": "Mail_Dispositions" }, { "type": "post", "url": "/api/mail/interactions/{id}/tags", "title": "Add tags to the interaction", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/interaction/{id}/tags -d '{\"ids\": [1,2]}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "AddTags", "group": "Mail_Interactions", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailInteraction/index.js", "groupTitle": "Mail_Interactions" }, { "type": "post", "url": "/api/mail/interactions", "title": "Creates a new Interaction", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/interactions -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateInteractions", "group": "Mail_Interactions", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "Boolean", "optional": true, "field": "closed", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "closedAt", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "disposition", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "note", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "inReplyTo", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "to", "description": "" }, { "group": "Body", "type": "Text", "optional": true, "field": "cc", "description": "" }, { "group": "Body", "type": "Text", "optional": true, "field": "subject", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "attach", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "read1stAt", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "substatus", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "substatusAt", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"in\"", "\"out\"" ], "optional": false, "field": "firstMsgDirection", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "lastMsgAt", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"in\"", "\"out\"" ], "optional": false, "field": "lastMsgDirection", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailInteraction/index.js", "groupTitle": "Mail_Interactions" }, { "type": "delete", "url": "/api/mail/interactions/{id}", "title": "Deletes a Interaction", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/interactions/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteInteractions", "group": "Mail_Interactions", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailInteraction/index.js", "groupTitle": "Mail_Interactions" }, { "type": "get", "url": "/api/mail/interactions/describe", "title": "Gets table info about Interactions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/interactions/describe -v -u {name}:{password}", "type": "json" } ], "name": "DescribeInteractions", "group": "Mail_Interactions", "description": "

Motion will return a HTTP status code 200 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailInteraction/index.js", "groupTitle": "Mail_Interactions" }, { "type": "get", "url": "/api/mail/interactions", "title": "Gets a list of Interactions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/interactions -v -u {name}:{password}", "type": "json" } ], "name": "GetInteractions", "group": "Mail_Interactions", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/mail/interactions?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/mail/interactions?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/mail/interactions?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/mail/interactions?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/mail/interactions?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/mailInteraction/index.js", "groupTitle": "Mail_Interactions" }, { "type": "delete", "url": "/api/mail/interactions/{id}/tags", "title": "Removes tags from interaction", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/interactions/{id}/tags?ids=1&ids=2 -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "RemoveTags", "group": "Mail_Interactions", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailInteraction/index.js", "groupTitle": "Mail_Interactions" }, { "type": "get", "url": "/api/mail/interactions/{id}", "title": "Gets a single Interaction", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/interactions/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowInteractions", "group": "Mail_Interactions", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailInteraction/index.js", "groupTitle": "Mail_Interactions" }, { "type": "post", "url": "/api/mail/interactions/{id}/messages", "title": "Creates new message", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/interactions/{id}/messages -d '[{\"to\": \"sales@xcally.com\", \"...\": \"...\"}]' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addMessage", "group": "Mail_Interactions", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "Text", "optional": false, "field": "body", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "read", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"in\"", "\"out\"" ], "optional": false, "field": "direction", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "messageId", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "from", "description": "" }, { "group": "Body", "type": "Text", "optional": true, "field": "to", "description": "" }, { "group": "Body", "type": "Text", "optional": true, "field": "cc", "description": "" }, { "group": "Body", "type": "Text", "optional": true, "field": "bcc", "description": "" }, { "group": "Body", "type": "Text", "optional": true, "field": "subject", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "sentAt", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "attach", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "secret", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "readAt", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailInteraction/index.js", "groupTitle": "Mail_Interactions" }, { "type": "get", "url": "/api/mail/interactions/{id}/messages", "title": "Gets interaction messages", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/interactions/{id}/messages -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getMessages", "group": "Mail_Interactions", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailInteraction/index.js", "groupTitle": "Mail_Interactions" }, { "type": "put", "url": "/api/mail/interactions/{id}", "title": "Update an existing Interaction", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/interactions/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateInteractions", "group": "Mail_Interactions", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailInteraction/index.js", "groupTitle": "Mail_Interactions" }, { "type": "delete", "url": "/api/mail/messages/{id}", "title": "Deletes a Message", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/messages/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteMessages", "group": "Mail_Messages", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailMessage/index.js", "groupTitle": "Mail_Messages" }, { "type": "get", "url": "/api/mail/messages/describe", "title": "Gets table info about Messages", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/messages/describe -v -u {name}:{password}", "type": "json" } ], "name": "DescribeMessages", "group": "Mail_Messages", "description": "

Motion will return a HTTP status code 200 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailMessage/index.js", "groupTitle": "Mail_Messages" }, { "type": "get", "url": "/api/mail/messages", "title": "Gets a list of Messages", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/messages -v -u {name}:{password}", "type": "json" } ], "name": "GetMessages", "group": "Mail_Messages", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/mail/messages?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/mail/messages?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/mail/messages?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/mail/messages?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/mail/messages?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/mailMessage/index.js", "groupTitle": "Mail_Messages" }, { "type": "get", "url": "/api/mail/messages/{id}", "title": "Gets a single Message", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/messages/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowMessages", "group": "Mail_Messages", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailMessage/index.js", "groupTitle": "Mail_Messages" }, { "type": "post", "url": "/api/mail/messages", "title": "Create a message", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/messages \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "createMessage", "group": "Mail_Messages", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailMessage/index.js", "groupTitle": "Mail_Messages" }, { "type": "put", "url": "/api/mail/messages/{id}", "title": "Update an existing Message", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/messages/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateMessages", "group": "Mail_Messages", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailMessage/index.js", "groupTitle": "Mail_Messages" }, { "type": "post", "url": "/api/mail/reports/queue", "title": "Creates a new Mail Queue Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/reports/queue -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateMail_Queue_Reports", "group": "Mail_Queue_Reports", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "uniqueid", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "from", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "joinAt", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "leaveAt", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "acceptAt", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "exitAt", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "reason", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailQueueReport/index.js", "groupTitle": "Mail_Queue_Reports" }, { "type": "delete", "url": "/api/mail/reports/queue/{id}", "title": "Deletes a Mail Queue Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/reports/queue/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteMail_Queue_Reports", "group": "Mail_Queue_Reports", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailQueueReport/index.js", "groupTitle": "Mail_Queue_Reports" }, { "type": "get", "url": "/api/mail/reports/queue/describe", "title": "Gets table info about Mail Queue Reports", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/reports/queue/describe -v -u {name}:{password}", "type": "json" } ], "name": "DescribeMail_Queue_Reports", "group": "Mail_Queue_Reports", "description": "

Motion will return a HTTP status code 200 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailQueueReport/index.js", "groupTitle": "Mail_Queue_Reports" }, { "type": "get", "url": "/api/mail/reports/queue", "title": "Gets a list of Mail Queue Reports", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/reports/queue -v -u {name}:{password}", "type": "json" } ], "name": "GetMail_Queue_Reports", "group": "Mail_Queue_Reports", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/mail/reports/queue?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/mail/reports/queue?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/mail/reports/queue?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/mail/reports/queue?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/mail/reports/queue?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/mailQueueReport/index.js", "groupTitle": "Mail_Queue_Reports" }, { "type": "get", "url": "/api/mail/reports/queue/{id}", "title": "Gets a single Mail Queue Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/reports/queue/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowMail_Queue_Reports", "group": "Mail_Queue_Reports", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailQueueReport/index.js", "groupTitle": "Mail_Queue_Reports" }, { "type": "put", "url": "/api/mail/reports/queue/{id}", "title": "Update an existing Mail Queue Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/reports/queue/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateMail_Queue_Reports", "group": "Mail_Queue_Reports", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailQueueReport/index.js", "groupTitle": "Mail_Queue_Reports" }, { "type": "post", "url": "/api/mail/queues/{id}/users", "title": "Add agents to a queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/queues/{id}/users -d '{\"ids\": [1,2], \"penalty\": 2}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "AddAgents", "group": "Mail_Queues", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailQueue/index.js", "groupTitle": "Mail_Queues" }, { "type": "post", "url": "/api/mail/queues/{id}/teams", "title": "Add teams to a queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/queues/{id}/teams -d '{\"ids\": [1,2]}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "AddTeams", "group": "Mail_Queues", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailQueue/index.js", "groupTitle": "Mail_Queues" }, { "type": "post", "url": "/api/mail/queues", "title": "Creates a new Queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/queues -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateQueues", "group": "Mail_Queues", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": true, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "timeout", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"rrmemory\"", "\"beepall\"", "\"roundrobin\"" ], "optional": true, "field": "strategy", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailQueue/index.js", "groupTitle": "Mail_Queues" }, { "type": "delete", "url": "/api/mail/queues/{id}", "title": "Deletes a Queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/queues/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteQueues", "group": "Mail_Queues", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailQueue/index.js", "groupTitle": "Mail_Queues" }, { "type": "get", "url": "/api/mail/queues/describe", "title": "Gets table info about Queues", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/queues/describe -v -u {name}:{password}", "type": "json" } ], "name": "DescribeQueues", "group": "Mail_Queues", "description": "

Motion will return a HTTP status code 200 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailQueue/index.js", "groupTitle": "Mail_Queues" }, { "type": "get", "url": "/api/mail/queues/{id}/users", "title": "Gets queue agents", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/queues/{id}/users -v -u {name}:{password} -X POST", "type": "json" } ], "name": "GetAgents", "group": "Mail_Queues", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailQueue/index.js", "groupTitle": "Mail_Queues" }, { "type": "get", "url": "/api/mail/queues/{id}/members", "title": "GetMembers", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/queues/{id}/members -v -u {name}:{password}", "type": "json" } ], "name": "GetMembers", "group": "Mail_Queues", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailQueue/index.js", "groupTitle": "Mail_Queues" }, { "type": "get", "url": "/api/mail/queues", "title": "Gets a list of Queues", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/queues -v -u {name}:{password}", "type": "json" } ], "name": "GetQueues", "group": "Mail_Queues", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/mail/queues?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/mail/queues?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/mail/queues?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/mail/queues?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/mail/queues?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/mailQueue/index.js", "groupTitle": "Mail_Queues" }, { "type": "get", "url": "/api/mail/queues/{id}/teams", "title": "Gets queues list", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/queues/{id}/teams -v -u {name}:{password}", "type": "json" } ], "name": "GetTeams", "group": "Mail_Queues", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailQueue/index.js", "groupTitle": "Mail_Queues" }, { "type": "delete", "url": "/api/mail/queues/{id}/users", "title": "Removes agents from a queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/queues/{id}/users?ids=1&ids=2 -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "RemoveAgents", "group": "Mail_Queues", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailQueue/index.js", "groupTitle": "Mail_Queues" }, { "type": "get", "url": "/api/mail/queues/{id}", "title": "Gets a single Queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/queues/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowQueues", "group": "Mail_Queues", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailQueue/index.js", "groupTitle": "Mail_Queues" }, { "type": "put", "url": "/api/mail/queues/{id}", "title": "Update an existing Queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/queues/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateQueues", "group": "Mail_Queues", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailQueue/index.js", "groupTitle": "Mail_Queues" }, { "type": "post", "url": "/api/mail/out_servers", "title": "Creates a new SMTP", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/out_servers -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateSMTPs", "group": "Mail_SMTP", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "host", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "user", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "pass", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "port", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "secure", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "service", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "authentication", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailServerOut/index.js", "groupTitle": "Mail_SMTP" }, { "type": "delete", "url": "/api/mail/out_servers/{id}", "title": "Deletes a SMTP", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/out_servers/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteSMTPs", "group": "Mail_SMTP", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailServerOut/index.js", "groupTitle": "Mail_SMTP" }, { "type": "get", "url": "/api/mail/out_servers", "title": "Gets a list of SMTPs", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/out_servers -v -u {name}:{password}", "type": "json" } ], "name": "GetSMTPs", "group": "Mail_SMTP", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/mail/out_servers?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/mail/out_servers?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/mail/out_servers?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/mail/out_servers?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/mail/out_servers?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/mailServerOut/index.js", "groupTitle": "Mail_SMTP" }, { "type": "get", "url": "/api/mail/out_servers/{id}", "title": "Gets a single SMTP", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/out_servers/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowSMTPs", "group": "Mail_SMTP", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailServerOut/index.js", "groupTitle": "Mail_SMTP" }, { "type": "put", "url": "/api/mail/out_servers/{id}", "title": "Update an existing SMTP", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/out_servers/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateSMTPs", "group": "Mail_SMTP", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailServerOut/index.js", "groupTitle": "Mail_SMTP" }, { "type": "post", "url": "/api/mail/substatuses", "title": "Creates a new Queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/substatuses -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateSubstatuses", "group": "Mail_Substatuses", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailSubstatus/index.js", "groupTitle": "Mail_Substatuses" }, { "type": "delete", "url": "/api/mail/substatuses/{id}", "title": "Deletes a Queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/substatuses/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteSubstatuses", "group": "Mail_Substatuses", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailSubstatus/index.js", "groupTitle": "Mail_Substatuses" }, { "type": "get", "url": "/api/mail/substatuses/describe", "title": "Gets table info about Substatuses", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/substatuses/describe -v -u {name}:{password}", "type": "json" } ], "name": "DescribeSubstatuses", "group": "Mail_Substatuses", "description": "

Motion will return a HTTP status code 200 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailSubstatus/index.js", "groupTitle": "Mail_Substatuses" }, { "type": "get", "url": "/api/mail/substatuses", "title": "Gets a list of Substatuses", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/substatuses -v -u {name}:{password}", "type": "json" } ], "name": "GetSubstatuses", "group": "Mail_Substatuses", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/mail/substatuses?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/mail/substatuses?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/mail/substatuses?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/mail/substatuses?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/mail/substatuses?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/mailSubstatus/index.js", "groupTitle": "Mail_Substatuses" }, { "type": "get", "url": "/api/mail/substatuses/{id}", "title": "Gets a single Queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/substatuses/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowSubstatuses", "group": "Mail_Substatuses", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailSubstatus/index.js", "groupTitle": "Mail_Substatuses" }, { "type": "put", "url": "/api/mail/substatuses/{id}", "title": "Update an existing Queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/substatuses/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateSubstatuses", "group": "Mail_Substatuses", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailSubstatus/index.js", "groupTitle": "Mail_Substatuses" }, { "type": "get", "url": "/api/members/reports/describe", "title": "Gets table info about Member Reports", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/members/reports/describe -v -u {name}:{password}", "type": "json" } ], "name": "DescribeMember_Reports", "group": "Member_Reports", "description": "

Motion will return a HTTP status code 200 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/memberReport/index.js", "groupTitle": "Member_Reports" }, { "type": "get", "url": "/api/members/reports", "title": "Gets a list of Member Reports", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/members/reports -v -u {name}:{password}", "type": "json" } ], "name": "GetMember_Reports", "group": "Member_Reports", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/members/reports?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/members/reports?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/members/reports?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/members/reports?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/members/reports?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/memberReport/index.js", "groupTitle": "Member_Reports" }, { "type": "get", "url": "/api/members/reports/{id}", "title": "Gets a single Member Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/members/reports/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowMember_Reports", "group": "Member_Reports", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/memberReport/index.js", "groupTitle": "Member_Reports" }, { "type": "get", "url": "/api/migrations", "title": "Gets a list of Migrations", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/migrations -v -u {name}:{password}", "type": "json" } ], "name": "GetMigrations", "group": "Migrations", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/migrations?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/migrations?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/migrations?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/migrations?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/migrations?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/migration/index.js", "groupTitle": "Migrations" }, { "type": "post", "url": "/api/voice/networks", "title": "Create a new network", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/networks -v -u {name}:{password} -X POST", "type": "json" } ], "name": "Create", "group": "Networks", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/network/index.js", "groupTitle": "Networks" }, { "type": "delete", "url": "/api/voice/networks/{id}", "title": "Deletes a network", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/networks/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "Delete", "group": "Networks", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/network/index.js", "groupTitle": "Networks" }, { "type": "get", "url": "/api/networks", "title": "Gets a list of Networks", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/networks -v -u {name}:{password}", "type": "json" } ], "name": "GetNetworks", "group": "Networks", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/networks?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/networks?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/networks?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/networks?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/networks?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/network/index.js", "groupTitle": "Networks" }, { "type": "get", "url": "/api/networks/{id}", "title": "Gets a single Network", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/networks/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowNetworks", "group": "Networks", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/network/index.js", "groupTitle": "Networks" }, { "type": "put", "url": "/api/voice/networks/{id}", "title": "Update an existing network", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/networks/{id} -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "Update", "group": "Networks", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/network/index.js", "groupTitle": "Networks" }, { "type": "post", "url": "/api/openchannel/accounts", "title": "Creates a new Account", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/accounts -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateAccounts", "group": "Openchannel_Accounts", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "replyUri", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "key", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelAccount/index.js", "groupTitle": "Openchannel_Accounts" }, { "type": "delete", "url": "/api/openchannel/accounts/{id}", "title": "Deletes a Account", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/accounts/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteAccounts", "group": "Openchannel_Accounts", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelAccount/index.js", "groupTitle": "Openchannel_Accounts" }, { "type": "get", "url": "/api/openchannel/accounts/describe", "title": "Gets table info about Accounts", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/accounts/describe -v -u {name}:{password}", "type": "json" } ], "name": "DescribeAccounts", "group": "Openchannel_Accounts", "description": "

Motion will return a HTTP status code 200 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelAccount/index.js", "groupTitle": "Openchannel_Accounts" }, { "type": "get", "url": "/api/openchannel/accounts", "title": "Gets a list of Accounts", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/accounts -v -u {name}:{password}", "type": "json" } ], "name": "GetAccounts", "group": "Openchannel_Accounts", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/openchannel/accounts?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/openchannel/accounts?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/openchannel/accounts?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/openchannel/accounts?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/openchannel/accounts?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/openchannelAccount/index.js", "groupTitle": "Openchannel_Accounts" }, { "type": "delete", "url": "/api/openchannel/accounts/{id}/canned_answers", "title": "Removes canned answers from account", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/accounts/{id}/canned_answers?ids=1&ids=2 -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "RemoveAnswers", "group": "Openchannel_Accounts", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelAccount/index.js", "groupTitle": "Openchannel_Accounts" }, { "type": "get", "url": "/api/openchannel/accounts/{id}", "title": "Gets a single Account", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/accounts/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowAccounts", "group": "Openchannel_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelAccount/index.js", "groupTitle": "Openchannel_Accounts" }, { "type": "post", "url": "/api/openchannel/accounts/{id}/canned_answers", "title": "Creates new canned answer", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/accounts/{id}/canned_answers -d '{\"name\": \"vip\"}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addAnswer", "group": "Openchannel_Accounts", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "key", "description": "" }, { "group": "Body", "type": "Text", "optional": false, "field": "value", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelAccount/index.js", "groupTitle": "Openchannel_Accounts" }, { "type": "post", "url": "/api/openchannel/accounts/{id}/applications", "title": "Creates new applications", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/accounts/{id}/applications -d '[{\"app\": \"queue\", \"...\": \"...\"}]' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addApplications", "group": "Openchannel_Accounts", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "Integer", "optional": false, "field": "priority", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "app", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "appdata", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "interval", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelAccount/index.js", "groupTitle": "Openchannel_Accounts" }, { "type": "post", "url": "/api/openchannel/accounts/{id}/dispositions", "title": "Creates new disposition", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/accounts/{id}/dispositions -d '{\"name\": \"Satisfied\"}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addDisposition", "group": "Openchannel_Accounts", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "name", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelAccount/index.js", "groupTitle": "Openchannel_Accounts" }, { "type": "post", "url": "/api/openchannel/accounts/{id}/dispositions", "title": "Creates many dispositions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/accounts/{id}/dispositions -d '[{\"name\": \"Satisfied\"}]' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addDispositions", "group": "Openchannel_Accounts", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "name", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelAccount/index.js", "groupTitle": "Openchannel_Accounts" }, { "type": "get", "url": "/api/openchannel/accounts/{id}/canned_answers", "title": "Gets account canned answers", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/accounts/{id}/canned_answers -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getAnswers", "group": "Openchannel_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelAccount/index.js", "groupTitle": "Openchannel_Accounts" }, { "type": "get", "url": "/api/openchannel/accounts/{id}/applications", "title": "Gets account applications", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/accounts/{id}/applications -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getApplications", "group": "Openchannel_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelAccount/index.js", "groupTitle": "Openchannel_Accounts" }, { "type": "get", "url": "/api/openchannel/accounts/{id}/dispositions", "title": "Gets account dispositions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/accounts/{id}/dispositions -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getDispositions", "group": "Openchannel_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelAccount/index.js", "groupTitle": "Openchannel_Accounts" }, { "type": "get", "url": "/api/openchannel/accounts/{id}/interactions", "title": "Gets Openchannel Account Interactions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/accounts/{id}/interactions -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getInteractions", "group": "Openchannel_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelAccount/index.js", "groupTitle": "Openchannel_Accounts" }, { "type": "post", "url": "/api/openchannel/accounts/{id}/notify", "title": "Notify new message", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/accounts/{id}/notify -d '{\"body\": \"hello world\", \"...\": \"...\"}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "notify", "group": "Openchannel_Accounts", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

Follow this link to check the documentation:

https://wiki.xcallymotion.com/display/XMV/New+Channels+Configuration+Steps#NewChannelsConfigurationSteps-BuildyourownChannelservice

", "version": "0.0.0", "filename": "server/api/openchannelAccount/index.js", "groupTitle": "Openchannel_Accounts" }, { "type": "put", "url": "/api/openchannel/accounts/{id}", "title": "Update an existing Account", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/accounts/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateAccounts", "group": "Openchannel_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelAccount/index.js", "groupTitle": "Openchannel_Accounts" }, { "type": "post", "url": "/api/openchannel/applications", "title": "Creates a new Application", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/applications -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateApplications", "group": "Openchannel_Applications", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "Integer", "optional": false, "field": "priority", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "app", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "appdata", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "interval", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelApplication/index.js", "groupTitle": "Openchannel_Applications" }, { "type": "delete", "url": "/api/openchannel/applications/{id}", "title": "Deletes a Application", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/applications/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteApplications", "group": "Openchannel_Applications", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelApplication/index.js", "groupTitle": "Openchannel_Applications" }, { "type": "get", "url": "/api/openchannel/applications", "title": "Gets a list of Applications", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/applications -v -u {name}:{password}", "type": "json" } ], "name": "GetApplications", "group": "Openchannel_Applications", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/openchannel/applications?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/openchannel/applications?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/openchannel/applications?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/openchannel/applications?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/openchannel/applications?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/openchannelApplication/index.js", "groupTitle": "Openchannel_Applications" }, { "type": "get", "url": "/api/openchannel/applications/{id}", "title": "Gets a single Application", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/applications/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowApplications", "group": "Openchannel_Applications", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelApplication/index.js", "groupTitle": "Openchannel_Applications" }, { "type": "put", "url": "/api/openchannel/applications/{id}", "title": "Update an existing Application", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/applications/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateApplications", "group": "Openchannel_Applications", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelApplication/index.js", "groupTitle": "Openchannel_Applications" }, { "type": "post", "url": "/api/openchannel/dispositions", "title": "Creates a new Disposition", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/dispositions -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateDispositions", "group": "Openchannel_Dispositions", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "name", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelDisposition/index.js", "groupTitle": "Openchannel_Dispositions" }, { "type": "delete", "url": "/api/openchannel/dispositions/{id}", "title": "Deletes a Disposition", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/dispositions/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteDispositions", "group": "Openchannel_Dispositions", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelDisposition/index.js", "groupTitle": "Openchannel_Dispositions" }, { "type": "get", "url": "/api/openchannel/dispositions/{id}", "title": "Gets a single Disposition", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/dispositions/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowDispositions", "group": "Openchannel_Dispositions", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelDisposition/index.js", "groupTitle": "Openchannel_Dispositions" }, { "type": "put", "url": "/api/openchannel/dispositions/{id}", "title": "Update an existing Disposition", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/dispositions/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateDispositions", "group": "Openchannel_Dispositions", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelDisposition/index.js", "groupTitle": "Openchannel_Dispositions" }, { "type": "post", "url": "/api/openchannel/interactions/{id}/tags", "title": "Add tags to the interaction", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/interaction/{id}/tags -d '{\"ids\": [1,2]}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "AddTags", "group": "Openchannel_Interactions", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelInteraction/index.js", "groupTitle": "Openchannel_Interactions" }, { "type": "post", "url": "/api/openchannel/interactions", "title": "Creates a new Interaction", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/interactions -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateInteractions", "group": "Openchannel_Interactions", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "Boolean", "optional": true, "field": "closed", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "closedAt", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "disposition", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "note", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "read1stAt", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "threadId", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "externalUrl", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "lastMsgAt", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"in\"", "\"out\"" ], "optional": false, "field": "lastMsgDirection", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelInteraction/index.js", "groupTitle": "Openchannel_Interactions" }, { "type": "delete", "url": "/api/openchannel/interactions/{id}", "title": "Deletes a Interaction", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/interactions/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteInteractions", "group": "Openchannel_Interactions", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelInteraction/index.js", "groupTitle": "Openchannel_Interactions" }, { "type": "get", "url": "/api/openchannel/interactions/describe", "title": "Gets table info about Interactions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/interactions/describe -v -u {name}:{password}", "type": "json" } ], "name": "DescribeInteractions", "group": "Openchannel_Interactions", "description": "

Motion will return a HTTP status code 200 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelInteraction/index.js", "groupTitle": "Openchannel_Interactions" }, { "type": "get", "url": "/api/openchannel/interactions", "title": "Gets a list of Interactions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/interactions -v -u {name}:{password}", "type": "json" } ], "name": "GetInteractions", "group": "Openchannel_Interactions", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/openchannel/interactions?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/openchannel/interactions?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/openchannel/interactions?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/openchannel/interactions?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/openchannel/interactions?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/openchannelInteraction/index.js", "groupTitle": "Openchannel_Interactions" }, { "type": "delete", "url": "/api/mail/accounts/{id}/canned_answers", "title": "Removes canned answers from account", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/accounts/{id}/canned_answers?ids=1&ids=2 -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "RemoveAnswers", "group": "Openchannel_Interactions", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailAccount/index.js", "groupTitle": "Openchannel_Interactions" }, { "type": "delete", "url": "/api/openchannel/interactions/{id}/tags", "title": "Removes tags from interaction", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/interactions/{id}/tags?ids=1&ids=2 -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "RemoveTags", "group": "Openchannel_Interactions", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelInteraction/index.js", "groupTitle": "Openchannel_Interactions" }, { "type": "get", "url": "/api/openchannel/interactions/{id}", "title": "Gets a single Interaction", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/interactions/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowInteractions", "group": "Openchannel_Interactions", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelInteraction/index.js", "groupTitle": "Openchannel_Interactions" }, { "type": "post", "url": "/api/openchannel/interactions/{id}/messages", "title": "Creates new messages", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/interactions/{id}/messages -d '[{\"to\": \"+3901119886500\", \"...\": \"...\"}]' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addMessage", "group": "Openchannel_Interactions", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "Text", "optional": false, "field": "body", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "read", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "secret", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"in\"", "\"out\"" ], "optional": false, "field": "direction", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "readAt", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelInteraction/index.js", "groupTitle": "Openchannel_Interactions" }, { "type": "get", "url": "/api/openchannel/interactions/{id}/messages", "title": "Gets interaction messages", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/interactions/{id}/messages -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getMessages", "group": "Openchannel_Interactions", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelInteraction/index.js", "groupTitle": "Openchannel_Interactions" }, { "type": "put", "url": "/api/openchannel/interactions/{id}", "title": "Update an existing Interaction", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/interactions/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateInteractions", "group": "Openchannel_Interactions", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelInteraction/index.js", "groupTitle": "Openchannel_Interactions" }, { "type": "post", "url": "/api/openchannel/messages", "title": "Creates a new Message", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/messages -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateMessages", "group": "Openchannel_Messages", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "Text", "optional": false, "field": "body", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "read", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "secret", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"in\"", "\"out\"" ], "optional": false, "field": "direction", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "readAt", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelMessage/index.js", "groupTitle": "Openchannel_Messages" }, { "type": "delete", "url": "/api/openchannel/messages/{id}", "title": "Deletes a Message", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/messages/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteMessages", "group": "Openchannel_Messages", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelMessage/index.js", "groupTitle": "Openchannel_Messages" }, { "type": "get", "url": "/api/openchannel/messages/describe", "title": "Gets table info about Messages", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/messages/describe -v -u {name}:{password}", "type": "json" } ], "name": "DescribeMessages", "group": "Openchannel_Messages", "description": "

Motion will return a HTTP status code 200 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelMessage/index.js", "groupTitle": "Openchannel_Messages" }, { "type": "get", "url": "/api/openchannel/messages", "title": "Gets a list of Messages", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/messages -v -u {name}:{password}", "type": "json" } ], "name": "GetMessages", "group": "Openchannel_Messages", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/openchannel/messages?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/openchannel/messages?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/openchannel/messages?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/openchannel/messages?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/openchannel/messages?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/openchannelMessage/index.js", "groupTitle": "Openchannel_Messages" }, { "type": "get", "url": "/api/openchannel/messages/{id}", "title": "Gets a single Message", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/messages/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowMessages", "group": "Openchannel_Messages", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelMessage/index.js", "groupTitle": "Openchannel_Messages" }, { "type": "put", "url": "/api/openchannel/messages/{id}/accept", "title": "Accepts message", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/messages/{id}/accept \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "acceptMessage", "group": "Openchannel_Messages", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelMessage/index.js", "groupTitle": "Openchannel_Messages" }, { "type": "put", "url": "/api/openchannel/messages/{id}/reject", "title": "Rejects message", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/messages/{id}/reject \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "rejectMessage", "group": "Openchannel_Messages", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelMessage/index.js", "groupTitle": "Openchannel_Messages" }, { "type": "put", "url": "/api/openchannel/messages/{id}", "title": "Update an existing Message", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/messages/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateMessages", "group": "Openchannel_Messages", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelMessage/index.js", "groupTitle": "Openchannel_Messages" }, { "type": "post", "url": "/api/openchannel/reports/queue", "title": "Creates a new Openchannel Queue Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/reports/queue -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateOpenchannel_Queue_Reports", "group": "Openchannel_Queue_Reports", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "uniqueid", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "from", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "joinAt", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "leaveAt", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "acceptAt", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "exitAt", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "reason", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelQueueReport/index.js", "groupTitle": "Openchannel_Queue_Reports" }, { "type": "delete", "url": "/api/openchannel/reports/queue/{id}", "title": "Deletes a Openchannel Queue Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/reports/queue/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteOpenchannel_Queue_Reports", "group": "Openchannel_Queue_Reports", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelQueueReport/index.js", "groupTitle": "Openchannel_Queue_Reports" }, { "type": "get", "url": "/api/openchannel/reports/queue/describe", "title": "Gets table info about Openchannel Queue Reports", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/reports/queue/describe -v -u {name}:{password}", "type": "json" } ], "name": "DescribeOpenchannel_Queue_Reports", "group": "Openchannel_Queue_Reports", "description": "

Motion will return a HTTP status code 200 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelQueueReport/index.js", "groupTitle": "Openchannel_Queue_Reports" }, { "type": "get", "url": "/api/openchannel/reports/queue", "title": "Gets a list of Openchannel Queue Reports", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/reports/queue -v -u {name}:{password}", "type": "json" } ], "name": "GetOpenchannel_Queue_Reports", "group": "Openchannel_Queue_Reports", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/openchannel/reports/queue?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/openchannel/reports/queue?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/openchannel/reports/queue?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/openchannel/reports/queue?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/openchannel/reports/queue?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/openchannelQueueReport/index.js", "groupTitle": "Openchannel_Queue_Reports" }, { "type": "get", "url": "/api/openchannel/reports/queue/{id}", "title": "Gets a single Openchannel Queue Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/reports/queue/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowOpenchannel_Queue_Reports", "group": "Openchannel_Queue_Reports", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelQueueReport/index.js", "groupTitle": "Openchannel_Queue_Reports" }, { "type": "put", "url": "/api/openchannel/reports/queue/{id}", "title": "Update an existing Openchannel Queue Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/reports/queue/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateOpenchannel_Queue_Reports", "group": "Openchannel_Queue_Reports", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelQueueReport/index.js", "groupTitle": "Openchannel_Queue_Reports" }, { "type": "post", "url": "/api/openchannel/queues/{id}/users", "title": "Add agents to a queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/queues/{id}/users -d '{\"ids\": [1,2], \"penalty\": 2}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "AddAgents", "group": "Openchannel_Queues", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelQueue/index.js", "groupTitle": "Openchannel_Queues" }, { "type": "post", "url": "/api/openchannel/queues/{id}/teams", "title": "Add teams to a queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/queues/{id}/teams -d '{\"ids\": [1,2]}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "AddTeams", "group": "Openchannel_Queues", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelQueue/index.js", "groupTitle": "Openchannel_Queues" }, { "type": "post", "url": "/api/openchannel/queues", "title": "Creates a new Queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/queues -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateQueues", "group": "Openchannel_Queues", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": true, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "timeout", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"rrmemory\"", "\"beepall\"", "\"roundrobin\"" ], "optional": true, "field": "strategy", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelQueue/index.js", "groupTitle": "Openchannel_Queues" }, { "type": "delete", "url": "/api/openchannel/queues/{id}", "title": "Deletes a Queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/queues/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteQueues", "group": "Openchannel_Queues", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelQueue/index.js", "groupTitle": "Openchannel_Queues" }, { "type": "get", "url": "/api/openchannel/queues/describe", "title": "Gets table info about Queues", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/queues/describe -v -u {name}:{password}", "type": "json" } ], "name": "DescribeQueues", "group": "Openchannel_Queues", "description": "

Motion will return a HTTP status code 200 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelQueue/index.js", "groupTitle": "Openchannel_Queues" }, { "type": "get", "url": "/api/openchannel/queues/{id}/users", "title": "Gets queue agents", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/queues/{id}/users -v -u {name}:{password} -X POST", "type": "json" } ], "name": "GetAgents", "group": "Openchannel_Queues", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelQueue/index.js", "groupTitle": "Openchannel_Queues" }, { "type": "get", "url": "/api/openchannel/queues/{id}/members", "title": "GetMembers", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/queues/{id}/members -v -u {name}:{password}", "type": "json" } ], "name": "GetMembers", "group": "Openchannel_Queues", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelQueue/index.js", "groupTitle": "Openchannel_Queues" }, { "type": "get", "url": "/api/openchannel/queues", "title": "Gets a list of Queues", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/queues -v -u {name}:{password}", "type": "json" } ], "name": "GetQueues", "group": "Openchannel_Queues", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/openchannel/queues?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/openchannel/queues?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/openchannel/queues?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/openchannel/queues?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/openchannel/queues?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/openchannelQueue/index.js", "groupTitle": "Openchannel_Queues" }, { "type": "get", "url": "/api/openchannel/queues/{id}/teams", "title": "Gets queues list", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/queues/{id}/teams -v -u {name}:{password}", "type": "json" } ], "name": "GetTeams", "group": "Openchannel_Queues", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelQueue/index.js", "groupTitle": "Openchannel_Queues" }, { "type": "delete", "url": "/api/openchannel/queues/{id}/users", "title": "Removes agents from a queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/queues/{id}/users?ids=1&ids=2 -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "RemoveAgents", "group": "Openchannel_Queues", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelQueue/index.js", "groupTitle": "Openchannel_Queues" }, { "type": "get", "url": "/api/openchannel/queues/{id}", "title": "Gets a single Queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/queues/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowQueues", "group": "Openchannel_Queues", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelQueue/index.js", "groupTitle": "Openchannel_Queues" }, { "type": "put", "url": "/api/openchannel/queues/{id}", "title": "Update an existing Queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/queues/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateQueues", "group": "Openchannel_Queues", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelQueue/index.js", "groupTitle": "Openchannel_Queues" }, { "type": "post", "url": "/api/pauses", "title": "Creates a new Pause", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/pauses -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreatePauses", "group": "Pauses", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/pause/index.js", "groupTitle": "Pauses" }, { "type": "delete", "url": "/api/pauses/{id}", "title": "Deletes a Pause", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/pauses/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeletePauses", "group": "Pauses", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/pause/index.js", "groupTitle": "Pauses" }, { "type": "get", "url": "/api/pauses", "title": "Gets a list of Pauses", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/pauses -v -u {name}:{password}", "type": "json" } ], "name": "GetPauses", "group": "Pauses", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/pauses?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/pauses?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/pauses?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/pauses?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/pauses?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/pause/index.js", "groupTitle": "Pauses" }, { "type": "get", "url": "/api/pauses/{id}", "title": "Gets a single Pause", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/pauses/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowPauses", "group": "Pauses", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/pause/index.js", "groupTitle": "Pauses" }, { "type": "put", "url": "/api/pauses/{id}", "title": "Update an existing Pause", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/pauses/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updatePauses", "group": "Pauses", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/pause/index.js", "groupTitle": "Pauses" }, { "type": "get", "url": "/api/pm2/{id}", "title": "Gets a single pm2 process", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/pm2/{id} -v -u {name}:{password}", "type": "json" } ], "name": "GetPm2Process", "group": "Pm2", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/pm2/index.js", "groupTitle": "Pm2" }, { "type": "get", "url": "/api/pm2", "title": "Gets pm2 processes", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/pm2 -v -u {name}:{password}", "type": "json" } ], "name": "GetPm2Processes", "group": "Pm2", "description": "

Motion returns the pm2 processes list.

", "version": "0.0.0", "filename": "server/api/pm2/index.js", "groupTitle": "Pm2" }, { "type": "put", "url": "/api/pm2/{id}", "title": "Update an existing Process", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/pm2/{id} -d '{\"status\": \"online\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateProcesses", "group": "Pm2", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/pm2/index.js", "groupTitle": "Pm2" }, { "type": "get", "url": "/api/rpc/campaigns/", "title": "Gets a list of campaigns", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/rpc/campaigns -v -u {name}:{password}", "type": "json" } ], "name": "Campaigns", "group": "RPC_Realtime", "description": "

Motion will return a list of realtime campaigns parameters.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/rpc/index.js", "groupTitle": "RPC_Realtime" }, { "type": "get", "url": "/api/rpc/fax/accounts", "title": "Gets a list of FaxAccounts", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/rpc/fax/accounts -v -u {name}:{password}", "type": "json" } ], "name": "FaxAccounts", "group": "RPC_Realtime", "description": "

Motion will return a list of realtime fax account parameters.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/rpc/index.js", "groupTitle": "RPC_Realtime" }, { "type": "put", "url": "/api/rpc/agents/:id/capacity", "title": "Sets agent capacity", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/rpc/agents/:id/capacity -v -u {name}:{password}", "type": "json" } ], "name": "RTAgentCapacity", "group": "RPC_Realtime", "description": "

Motion will return the current agent capacity.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/rpc/index.js", "groupTitle": "RPC_Realtime" }, { "type": "get", "url": "/api/rpc/agents", "title": "Gets a list of RTAgents", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/rpc/agents -v -u {name}:{password}", "type": "json" } ], "name": "RTAgents", "group": "RPC_Realtime", "description": "

Motion will return a list of realtime agents parameters.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/rpc/index.js", "groupTitle": "RPC_Realtime" }, { "type": "get", "url": "/api/rpc/chat/queues", "title": "Gets a list of RTChatQueues", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/rpc/chat/queues -v -u {name}:{password}", "type": "json" } ], "name": "RTChatQueues", "group": "RPC_Realtime", "description": "

Motion will return a list of realtime chat queues parameters.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/rpc/index.js", "groupTitle": "RPC_Realtime" }, { "type": "get", "url": "/api/rpc/fax/queues", "title": "Gets a list of RTFaxQueues", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/rpc/fax/queues -v -u {name}:{password}", "type": "json" } ], "name": "RTFaxQueues", "group": "RPC_Realtime", "description": "

Motion will return a list of realtime fax queues parameters.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/rpc/index.js", "groupTitle": "RPC_Realtime" }, { "type": "get", "url": "/api/rpc/mail/accounts", "title": "Gets a list of RTMailAccounts", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/rpc/mail/accounts -v -u {name}:{password}", "type": "json" } ], "name": "RTMailAccounts", "group": "RPC_Realtime", "description": "

Motion will return a list of realtime mail account parameters.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/rpc/index.js", "groupTitle": "RPC_Realtime" }, { "type": "get", "url": "/api/rpc/mail/queues", "title": "Gets a list of RTMailQueues", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/rpc/mail/queues -v -u {name}:{password}", "type": "json" } ], "name": "RTMailQueues", "group": "RPC_Realtime", "description": "

Motion will return a list of realtime mail queues parameters.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/rpc/index.js", "groupTitle": "RPC_Realtime" }, { "type": "get", "url": "/api/rpc/openchannel/queues", "title": "Gets a list of RTOpenchannelQueues", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/rpc/openchannel/queues -v -u {name}:{password}", "type": "json" } ], "name": "RTOpenchannelQueues", "group": "RPC_Realtime", "description": "

Motion will return a list of realtime openchannel queues parameters.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/rpc/index.js", "groupTitle": "RPC_Realtime" }, { "type": "get", "url": "/api/rpc/outbound/channels", "title": "Gets a list of RTOutboundChannels", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/rpc/outbound/channels -v -u {name}:{password}", "type": "json" } ], "name": "RTOutboundChannels", "group": "RPC_Realtime", "description": "

Motion will return a list of realtime outbound channels.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/rpc/index.js", "groupTitle": "RPC_Realtime" }, { "type": "get", "url": "/api/rpc/sms/queues", "title": "Gets a list of RTSmsQueues", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/rpc/sms/queues -v -u {name}:{password}", "type": "json" } ], "name": "RTSmsQueues", "group": "RPC_Realtime", "description": "

Motion will return a list of realtime sms queues parameters.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/rpc/index.js", "groupTitle": "RPC_Realtime" }, { "type": "get", "url": "/api/rpc/telephones", "title": "Gets a list of RTTelephones", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/rpc/telephones -v -u {name}:{password}", "type": "json" } ], "name": "RTTelephones", "group": "RPC_Realtime", "description": "

Motion will return a list of telephones parameters.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/rpc/index.js", "groupTitle": "RPC_Realtime" }, { "type": "get", "url": "/api/rpc/trunks", "title": "Gets a list of RTTrunks", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/rpc/trunks -v -u {name}:{password}", "type": "json" } ], "name": "RTTrunks", "group": "RPC_Realtime", "description": "

Motion will return a list of realtime trunks parameters.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/rpc/index.js", "groupTitle": "RPC_Realtime" }, { "type": "get", "url": "/api/rpc/voice/channels", "title": "Gets a list of RTVoiceChannelMixMonitor", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/rpc/voice/channels/{uniqueid}/mixmonitor -v -u {name}:{password}", "type": "json" } ], "name": "RTVoiceChannelMixMonitor", "group": "RPC_Realtime", "description": "

Motion will return a list of realtime voice channel mixmonitor.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/rpc/index.js", "groupTitle": "RPC_Realtime" }, { "type": "get", "url": "/api/rpc/voice/channels", "title": "Gets a list of RTVoiceChannelStopMixMonitor", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/rpc/voice/channels/{uniqueid}/stopmixmonitor -v -u {name}:{password}", "type": "json" } ], "name": "RTVoiceChannelStopMixMonitor", "group": "RPC_Realtime", "description": "

Motion will return a list of realtime voice channel stopmixmonitor.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/rpc/index.js", "groupTitle": "RPC_Realtime" }, { "type": "get", "url": "/api/rpc/voice/channels", "title": "Gets a list of RTVoiceChannels", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/rpc/voice/channels -v -u {name}:{password}", "type": "json" } ], "name": "RTVoiceChannels", "group": "RPC_Realtime", "description": "

Motion will return a list of realtime voice channels.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/rpc/index.js", "groupTitle": "RPC_Realtime" }, { "type": "get", "url": "/api/rpc/voice/queues/channels/{uniqueid}", "title": "Gets a single RTVoiceQueueChannel", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/rpc/voice/queues/channels/{uniqueid} -v -u {name}:{password}", "type": "json" } ], "name": "RTVoiceQueueChannel", "group": "RPC_Realtime", "description": "

Motion will return a specific realtime voice queue channel.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/rpc/index.js", "groupTitle": "RPC_Realtime" }, { "type": "get", "url": "/api/rpc/voice/queues/channels/{uniqueid}/hangup", "title": "Hangup a single RTVoiceQueueChannel", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/rpc/voice/queues/channels/{uniqueid}/hangup -v -u {name}:{password}", "type": "json" } ], "name": "RTVoiceQueueChannelHangup", "group": "RPC_Realtime", "description": "

Motion will hangup a specific realtime voice queue channel.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/rpc/index.js", "groupTitle": "RPC_Realtime" }, { "type": "get", "url": "/api/rpc/voice/queues/channels/{uniqueid}/redirect/{exten}", "title": "Hangup a single RTVoiceQueueChannel", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/rpc/voice/queues/channels/{uniqueid}/redirect/{exten} -v -u {name}:{password}", "type": "json" } ], "name": "RTVoiceQueueChannelRedirect", "group": "RPC_Realtime", "description": "

Motion will redirect a specific realtime voice queue channel to a specific extension.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/rpc/index.js", "groupTitle": "RPC_Realtime" }, { "type": "get", "url": "/api/rpc/voice/queues/preview/{id}", "title": "Gets a single preview contact", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/rpc/voice/queues/preview/{id} -v -u {name}:{password}", "type": "json" } ], "name": "RTVoiceQueuePreview", "group": "RPC_Realtime", "description": "

Motion will return a specific preview contact.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/rpc/index.js", "groupTitle": "RPC_Realtime" }, { "type": "get", "url": "/api/rpc/outbound", "title": "Gets a list of RTOutbound", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/rpc/outbound -v -u {name}:{password}", "type": "json" } ], "name": "RTVoiceQueues", "group": "RPC_Realtime", "description": "

Motion will return a list of realtime outbound parameters.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/rpc/index.js", "groupTitle": "RPC_Realtime" }, { "type": "get", "url": "/api/rpc/voice/queues", "title": "Gets a list of RTVoiceQueues", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/rpc/voice/queues -v -u {name}:{password}", "type": "json" } ], "name": "RTVoiceQueues", "group": "RPC_Realtime", "description": "

Motion will return a list of realtime voice queues parameters.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/rpc/index.js", "groupTitle": "RPC_Realtime" }, { "type": "get", "url": "/api/rpc/voice/queues/channels", "title": "Gets a list of RTVoiceQueuesChannels", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/rpc/voice/queues/channels -v -u {name}:{password}", "type": "json" } ], "name": "RTVoiceQueuesChannels", "group": "RPC_Realtime", "description": "

Motion will return a list of realtime voice queues channels.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/rpc/index.js", "groupTitle": "RPC_Realtime" }, { "type": "get", "url": "/api/rpc/chat/queues/waitinginteractions", "title": "Gets a list of chatQueuesWaitingInteractions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/rpc/voice/queues/waitinginteractions -v -u {name}:{password}", "type": "json" } ], "name": "chatQueuesWaitingInteractions", "group": "RPC_Realtime", "description": "

Motion will return a list of realtime waiting chat queues interctions.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/rpc/index.js", "groupTitle": "RPC_Realtime" }, { "type": "get", "url": "/api/rpc/fax/queues/waitinginteractions", "title": "Gets a list of faxQueuesWaitingInteractions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/rpc/fax/queues/waitinginteractions -v -u {name}:{password}", "type": "json" } ], "name": "faxQueuesWaitingInteractions", "group": "RPC_Realtime", "description": "

Motion will return a list of realtime waiting fax queues interctions.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/rpc/index.js", "groupTitle": "RPC_Realtime" }, { "type": "get", "url": "/api/rpc/mail/queues/waitinginteractions", "title": "Gets a list of mailQueuesWaitingInteractions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/rpc/mail/queues/waitinginteractions -v -u {name}:{password}", "type": "json" } ], "name": "mailQueuesWaitingInteractions", "group": "RPC_Realtime", "description": "

Motion will return a list of realtime waiting mail queues interctions.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/rpc/index.js", "groupTitle": "RPC_Realtime" }, { "type": "get", "url": "/api/rpc/openchannel/queues/waitinginteractions", "title": "Gets a list of openchannelQueuesWaitingInteractions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/rpc/openchannel/queues/waitinginteractions -v -u {name}:{password}", "type": "json" } ], "name": "openchannelQueuesWaitingInteractions", "group": "RPC_Realtime", "description": "

Motion will return a list of realtime waiting openchannel queues interctions.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/rpc/index.js", "groupTitle": "RPC_Realtime" }, { "type": "get", "url": "/api/rpc/sms/queues/waitinginteractions", "title": "Gets a list of smsQueuesWaitingInteractions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/rpc/sms/queues/waitinginteractions -v -u {name}:{password}", "type": "json" } ], "name": "smsQueuesWaitingInteractions", "group": "RPC_Realtime", "description": "

Motion will return a list of realtime waiting sms queues interctions.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/rpc/index.js", "groupTitle": "RPC_Realtime" }, { "type": "post", "url": "/api/integrations/salesforce/accounts", "title": "Creates a new Salesforce Account", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/salesforce/accounts -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateSalesforce_Accounts", "group": "Salesforce_Accounts", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": true, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "username", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "remoteUri", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "password", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "clientId", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "clientSecret", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "securityToken", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "serverUrl", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"integrationTab\"", "\"newTab\"" ], "optional": true, "field": "type", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intSalesforceAccount/index.js", "groupTitle": "Salesforce_Accounts" }, { "type": "delete", "url": "/api/integrations/salesforce/accounts/{id}", "title": "Deletes a Salesforce Account", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/salesforce/accounts/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteSalesforce_Accounts", "group": "Salesforce_Accounts", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intSalesforceAccount/index.js", "groupTitle": "Salesforce_Accounts" }, { "type": "get", "url": "/api/integrations/salesforce/accounts", "title": "Gets a list of Salesforce Accounts", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/salesforce/accounts -v -u {name}:{password}", "type": "json" } ], "name": "GetSalesforce_Accounts", "group": "Salesforce_Accounts", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/integrations/salesforce/accounts?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/integrations/salesforce/accounts?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/integrations/salesforce/accounts?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/integrations/salesforce/accounts?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/integrations/salesforce/accounts?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/intSalesforceAccount/index.js", "groupTitle": "Salesforce_Accounts" }, { "type": "get", "url": "/api/integrations/salesforce/accounts/{id}", "title": "Gets a single Salesforce Account", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/salesforce/accounts/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowSalesforce_Accounts", "group": "Salesforce_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intSalesforceAccount/index.js", "groupTitle": "Salesforce_Accounts" }, { "type": "post", "url": "/api/integrations/salesforce/accounts/{id}/configurations", "title": "Creates new configuration", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/salesforce/accounts/{id}/configurations -d '{\"name\": \"conf1\"}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addConfiguration", "group": "Salesforce_Accounts", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intSalesforceAccount/index.js", "groupTitle": "Salesforce_Accounts" }, { "type": "get", "url": "/api/integrations/salesforce/accounts/{id}/configurations", "title": "Gets account configurations", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/salesforce/accounts/{id}/configurations -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getConfigurations", "group": "Salesforce_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intSalesforceAccount/index.js", "groupTitle": "Salesforce_Accounts" }, { "type": "get", "url": "/api/integrations/salesforce/accounts/{id}/fields", "title": "Gets account fields", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/salesforce/accounts/{id}/fields -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getFields", "group": "Salesforce_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intSalesforceAccount/index.js", "groupTitle": "Salesforce_Accounts" }, { "type": "put", "url": "/api/integrations/salesforce/accounts/{id}", "title": "Update an existing Salesforce Account", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/salesforce/accounts/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateSalesforce_Accounts", "group": "Salesforce_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intSalesforceAccount/index.js", "groupTitle": "Salesforce_Accounts" }, { "type": "post", "url": "/api/integrations/salesforce/configurations", "title": "Creates a new Salesforce Configuration", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/salesforce/configurations -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateSalesforce_Configurations", "group": "Salesforce_Configurations", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": true, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"contact_lead\"", "\"contact\"", "\"lead\"" ], "optional": true, "field": "moduleSearch", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"nothing\"", "\"contact\"", "\"lead\"" ], "optional": true, "field": "moduleCreate", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intSalesforceConfiguration/index.js", "groupTitle": "Salesforce_Configurations" }, { "type": "delete", "url": "/api/integrations/salesforce/configurations/{id}", "title": "Deletes a Salesforce Configuration", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/salesforce/configurations/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteSalesforce_Configurations", "group": "Salesforce_Configurations", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intSalesforceConfiguration/index.js", "groupTitle": "Salesforce_Configurations" }, { "type": "get", "url": "/api/integrations/salesforce/configurations", "title": "Gets a list of Salesforce Configurations", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/salesforce/configurations -v -u {name}:{password}", "type": "json" } ], "name": "GetSalesforce_Configurations", "group": "Salesforce_Configurations", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/integrations/salesforce/configurations?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/integrations/salesforce/configurations?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/integrations/salesforce/configurations?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/integrations/salesforce/configurations?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/integrations/salesforce/configurations?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/intSalesforceConfiguration/index.js", "groupTitle": "Salesforce_Configurations" }, { "type": "get", "url": "/api/integrations/salesforce/configurations/{id}", "title": "Gets a single Salesforce Configuration", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/salesforce/configurations/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowSalesforce_Configurations", "group": "Salesforce_Configurations", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intSalesforceConfiguration/index.js", "groupTitle": "Salesforce_Configurations" }, { "type": "get", "url": "/api/integrations/salesforce/configurations/{id}/descriptions", "title": "Gets configurations descriptions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/salesforce/configurations/{id}/descriptions -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getDescriptions", "group": "Salesforce_Configurations", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intSalesforceConfiguration/index.js", "groupTitle": "Salesforce_Configurations" }, { "type": "get", "url": "/api/integrations/salesforce/configurations/{id}/fields", "title": "Gets configurations fields", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/salesforce/configurations/{id}/fields -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getFields", "group": "Salesforce_Configurations", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intSalesforceConfiguration/index.js", "groupTitle": "Salesforce_Configurations" }, { "type": "get", "url": "/api/integrations/salesforce/configurations/{id}/subjects", "title": "Gets configurations subjects", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/salesforce/configurations/{id}/subjects -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getSubjects", "group": "Salesforce_Configurations", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intSalesforceConfiguration/index.js", "groupTitle": "Salesforce_Configurations" }, { "type": "put", "url": "/api/integrations/salesforce/configurations/{id}", "title": "Update an existing Salesforce Configuration", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/salesforce/configurations/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateSalesforce_Configurations", "group": "Salesforce_Configurations", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intSalesforceConfiguration/index.js", "groupTitle": "Salesforce_Configurations" }, { "type": "post", "url": "/api/integrations/salesforce/fields", "title": "Creates a new Salesforce Field", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/salesforce/fields -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateSalesforce_Fields", "group": "Salesforce_Fields", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "allowedValues": [ "\"string\"", "\"variable\"", "\"customVariable\"", "\"keyValue\"" ], "optional": true, "field": "type", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "content", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "key", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"string\"", "\"variable\"", "\"customVariable\"" ], "optional": true, "field": "keyType", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "keyContent", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "idField", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "variableName", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intSalesforceField/index.js", "groupTitle": "Salesforce_Fields" }, { "type": "delete", "url": "/api/integrations/salesforce/fields/{id}", "title": "Deletes a Salesforce Field", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/salesforce/fields/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteSalesforce_Fields", "group": "Salesforce_Fields", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intSalesforceField/index.js", "groupTitle": "Salesforce_Fields" }, { "type": "get", "url": "/api/integrations/salesforce/fields", "title": "Gets a list of Salesforce Fields", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/salesforce/fields -v -u {name}:{password}", "type": "json" } ], "name": "GetSalesforce_Fields", "group": "Salesforce_Fields", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/integrations/salesforce/fields?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/integrations/salesforce/fields?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/integrations/salesforce/fields?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/integrations/salesforce/fields?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/integrations/salesforce/fields?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/intSalesforceField/index.js", "groupTitle": "Salesforce_Fields" }, { "type": "get", "url": "/api/integrations/salesforce/fields/{id}", "title": "Gets a single Salesforce Field", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/salesforce/fields/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowSalesforce_Fields", "group": "Salesforce_Fields", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intSalesforceField/index.js", "groupTitle": "Salesforce_Fields" }, { "type": "put", "url": "/api/integrations/salesforce/fields/{id}", "title": "Update an existing Salesforce Field", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/salesforce/fields/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateSalesforce_Fields", "group": "Salesforce_Fields", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intSalesforceField/index.js", "groupTitle": "Salesforce_Fields" }, { "type": "post", "url": "/api/schedules", "title": "Creates a new Schedule", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/schedules -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateSchedules", "group": "Schedules", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" }, { "group": "Body", "type": "Boolean", "optional": false, "field": "active", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "cron", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "startAt", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "endAt", "description": "" }, { "group": "Body", "type": "Integer", "optional": false, "field": "subtractNumber", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"years\"", "\"quarters\"", "\"months\"", "\"weeks\"", "\"days\"", "\"hours\"", "\"minutes\"" ], "optional": false, "field": "subtractUnit", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"csv\"", "\"pdf\"", "\"xlsx\"" ], "optional": false, "field": "output", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"custom\"", "\"default\"" ], "optional": false, "field": "type", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "sendMail", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "email", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/schedule/index.js", "groupTitle": "Schedules" }, { "type": "delete", "url": "/api/schedules/{id}", "title": "Deletes a Schedule", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/schedules/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteSchedules", "group": "Schedules", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/schedule/index.js", "groupTitle": "Schedules" }, { "type": "get", "url": "/api/schedules", "title": "Gets a list of Schedules", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/schedules -v -u {name}:{password}", "type": "json" } ], "name": "GetSchedules", "group": "Schedules", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/schedules?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/schedules?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/schedules?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/schedules?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/schedules?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/schedule/index.js", "groupTitle": "Schedules" }, { "type": "get", "url": "/api/schedules/{id}", "title": "Gets a single Schedule", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/schedules/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowSchedules", "group": "Schedules", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/schedule/index.js", "groupTitle": "Schedules" }, { "type": "put", "url": "/api/schedules/{id}", "title": "Update an existing Schedule", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/schedules/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateSchedules", "group": "Schedules", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/schedule/index.js", "groupTitle": "Schedules" }, { "type": "get", "url": "/api/settings", "title": "Gets a list of Settings", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/settings -v -u {name}:{password}", "type": "json" } ], "name": "GetSettings", "group": "Settings", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/settings?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/settings?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/settings?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/settings?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/settings?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/setting/index.js", "groupTitle": "Settings" }, { "type": "get", "url": "/api/settings/{id}", "title": "Gets a single Setting", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/settings/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowSettings", "group": "Settings", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/setting/index.js", "groupTitle": "Settings" }, { "type": "put", "url": "/api/settings/{id}", "title": "Update settings", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/settings/{id} -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "Update", "group": "Settings", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/setting/index.js", "groupTitle": "Settings" }, { "type": "post", "url": "/api/settings/{id}/logo", "title": "Add logo", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/settings/{id}/logo -H 'Content-Type: multipart/form-data' -F 'file=@{filename}' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addLogo", "group": "Settings", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/setting/index.js", "groupTitle": "Settings" }, { "type": "post", "url": "/api/settings/{id}/logo_login", "title": "Add logo login", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/settings/{id}/logo_login -H 'Content-Type: multipart/form-data' -F 'file=@{filename}' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addLogoLogin", "group": "Settings", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/setting/index.js", "groupTitle": "Settings" }, { "type": "get", "url": "/api/settings/{id}/gdpr", "title": "Get gdpr settings", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/settings/{id}/gdpr -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getGdpr", "group": "Settings", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/setting/index.js", "groupTitle": "Settings" }, { "type": "get", "url": "/api/settings/{id}/logo", "title": "Get logo", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/settings/{id}/logo -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getLogo", "group": "Settings", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/setting/index.js", "groupTitle": "Settings" }, { "type": "get", "url": "/api/settings/{id}/logo_login", "title": "Get logo login", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/settings/{id}/logo_login -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getLogoLogin", "group": "Settings", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/setting/index.js", "groupTitle": "Settings" }, { "type": "post", "url": "/api/sms/accounts", "title": "Creates a new Account", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/accounts -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateAccounts", "group": "Sms_Accounts", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "key", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "remote", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "token", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "phone", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"twilio\"", "\"skebby\"", "\"connectel\"", "\"clicksend\"", "\"plivo\"" ], "optional": true, "field": "type", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "accountSid", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "authId", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "authToken", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"basic\"", "\"classic\"", "\"classic+\"" ], "optional": true, "field": "smsMethod", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "username", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "password", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "senderString", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "deliveryReport", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsAccount/index.js", "groupTitle": "Sms_Accounts" }, { "type": "delete", "url": "/api/sms/accounts/{id}", "title": "Deletes a Account", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/accounts/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteAccounts", "group": "Sms_Accounts", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsAccount/index.js", "groupTitle": "Sms_Accounts" }, { "type": "get", "url": "/api/sms/accounts/describe", "title": "Gets table info about Accounts", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/accounts/describe -v -u {name}:{password}", "type": "json" } ], "name": "DescribeAccounts", "group": "Sms_Accounts", "description": "

Motion will return a HTTP status code 200 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsAccount/index.js", "groupTitle": "Sms_Accounts" }, { "type": "get", "url": "/api/sms/accounts", "title": "Gets a list of Accounts", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/accounts -v -u {name}:{password}", "type": "json" } ], "name": "GetAccounts", "group": "Sms_Accounts", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/sms/accounts?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/sms/accounts?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/sms/accounts?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/sms/accounts?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/sms/accounts?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/smsAccount/index.js", "groupTitle": "Sms_Accounts" }, { "type": "delete", "url": "/api/sms/accounts/{id}/canned_answers", "title": "Removes canned answers from account", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/accounts/{id}/canned_answers?ids=1&ids=2 -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "RemoveAnswers", "group": "Sms_Accounts", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsAccount/index.js", "groupTitle": "Sms_Accounts" }, { "type": "get", "url": "/api/sms/accounts/{id}", "title": "Gets a single Account", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/accounts/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowAccounts", "group": "Sms_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsAccount/index.js", "groupTitle": "Sms_Accounts" }, { "type": "put", "url": "/api/sms/messages/{id}/accept", "title": "Accepts message", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/messages/{id}/accept \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "acceptMessage", "group": "Sms_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsMessage/index.js", "groupTitle": "Sms_Accounts" }, { "type": "post", "url": "/api/sms/accounts/{id}/canned_answers", "title": "Creates new canned answer", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/accounts/{id}/canned_answers -d '{\"name\": \"vip\"}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addAnswer", "group": "Sms_Accounts", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "key", "description": "" }, { "group": "Body", "type": "Text", "optional": false, "field": "value", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsAccount/index.js", "groupTitle": "Sms_Accounts" }, { "type": "post", "url": "/api/sms/accounts/{id}/applications", "title": "Creates new applications", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/accounts/{id}/applications -d '[{\"app\": \"queue\", \"...\": \"...\"}]' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addApplications", "group": "Sms_Accounts", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "Integer", "optional": false, "field": "priority", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "app", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "appdata", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "interval", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsAccount/index.js", "groupTitle": "Sms_Accounts" }, { "type": "post", "url": "/api/sms/accounts/{id}/dispositions", "title": "Creates new disposition", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/accounts/{id}/dispositions -d '{\"name\": \"Satisfied\"}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addDisposition", "group": "Sms_Accounts", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "name", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsAccount/index.js", "groupTitle": "Sms_Accounts" }, { "type": "post", "url": "/api/sms/accounts/{id}/dispositions", "title": "Creates many dispositions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/accounts/{id}/dispositions -d '[{\"name\": \"Satisfied\"}]' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addDispositions", "group": "Sms_Accounts", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "name", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsAccount/index.js", "groupTitle": "Sms_Accounts" }, { "type": "get", "url": "/api/sms/accounts/{id}/canned_answers", "title": "Gets account canned answers", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/accounts/{id}/canned_answers -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getAnswers", "group": "Sms_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsAccount/index.js", "groupTitle": "Sms_Accounts" }, { "type": "get", "url": "/api/sms/accounts/{id}/applications", "title": "Gets account applications", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/accounts/{id}/applications -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getApplications", "group": "Sms_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsAccount/index.js", "groupTitle": "Sms_Accounts" }, { "type": "get", "url": "/api/sms/accounts/{id}/dispositions", "title": "Gets account dispositions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/accounts/{id}/dispositions -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getDispositions", "group": "Sms_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsAccount/index.js", "groupTitle": "Sms_Accounts" }, { "type": "get", "url": "/api/sms/accounts/{id}/interactions", "title": "Gets Sms Account interactions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/accounts/{id}/interactions -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getInteractions", "group": "Sms_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsAccount/index.js", "groupTitle": "Sms_Accounts" }, { "type": "post", "url": "/api/sms/accounts/{id}/notify", "title": "Notify new message", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/accounts/{id}/notify -d '{\"body\": \"hello world\", \"...\": \"...\"}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "notify", "group": "Sms_Accounts", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

This API is used to create a new sms message to be sent to the system.

", "version": "0.0.0", "filename": "server/api/smsAccount/index.js", "groupTitle": "Sms_Accounts" }, { "type": "put", "url": "/api/sms/messages/{id}/reject", "title": "Rejects message", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/messages/{id}/reject \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "rejectMessage", "group": "Sms_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsMessage/index.js", "groupTitle": "Sms_Accounts" }, { "type": "post", "url": "/api/sms/accounts/{id}/send", "title": "Send new sms message", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/accounts/{id}/send -d '{from: '+39333123456', body: 'This is a test'}' -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "sendSms", "group": "Sms_Accounts", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsAccount/index.js", "groupTitle": "Sms_Accounts" }, { "type": "post", "url": "/api/sms/accounts/{id}/status", "title": "Receive message status", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/accounts/{id}/status \\ \n -H 'Content-Type: application/json' -v -X POST", "type": "json" } ], "name": "statusMessage", "group": "Sms_Accounts", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsAccount/index.js", "groupTitle": "Sms_Accounts" }, { "type": "post", "url": "/api/sms/messages/{id}/status", "title": "Receive message status", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/messages/{id}/status \\ \n -H 'Content-Type: application/json' -v -X POST", "type": "json" } ], "name": "statusMessage", "group": "Sms_Accounts", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsMessage/index.js", "groupTitle": "Sms_Accounts" }, { "type": "put", "url": "/api/sms/accounts/{id}", "title": "Update an existing Account", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/accounts/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateAccounts", "group": "Sms_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsAccount/index.js", "groupTitle": "Sms_Accounts" }, { "type": "post", "url": "/api/sms/applications", "title": "Creates a new Application", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/applications -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateApplications", "group": "Sms_Applications", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "Integer", "optional": false, "field": "priority", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "app", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "appdata", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "interval", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsApplication/index.js", "groupTitle": "Sms_Applications" }, { "type": "delete", "url": "/api/sms/applications/{id}", "title": "Deletes a Application", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/applications/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteApplications", "group": "Sms_Applications", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsApplication/index.js", "groupTitle": "Sms_Applications" }, { "type": "get", "url": "/api/sms/applications", "title": "Gets a list of Applications", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/applications -v -u {name}:{password}", "type": "json" } ], "name": "GetApplications", "group": "Sms_Applications", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/sms/applications?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/sms/applications?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/sms/applications?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/sms/applications?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/sms/applications?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/smsApplication/index.js", "groupTitle": "Sms_Applications" }, { "type": "get", "url": "/api/sms/applications/{id}", "title": "Gets a single Application", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/applications/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowApplications", "group": "Sms_Applications", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsApplication/index.js", "groupTitle": "Sms_Applications" }, { "type": "put", "url": "/api/sms/applications/{id}", "title": "Update an existing Application", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/applications/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateApplications", "group": "Sms_Applications", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsApplication/index.js", "groupTitle": "Sms_Applications" }, { "type": "post", "url": "/api/sms/dispositions", "title": "Creates a new Disposition", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/dispositions -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateDispositions", "group": "Sms_Dispositions", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "name", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsDisposition/index.js", "groupTitle": "Sms_Dispositions" }, { "type": "delete", "url": "/api/sms/dispositions/{id}", "title": "Deletes a Disposition", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/dispositions/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteDispositions", "group": "Sms_Dispositions", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsDisposition/index.js", "groupTitle": "Sms_Dispositions" }, { "type": "get", "url": "/api/sms/dispositions/{id}", "title": "Gets a single Disposition", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/dispositions/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowDispositions", "group": "Sms_Dispositions", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsDisposition/index.js", "groupTitle": "Sms_Dispositions" }, { "type": "put", "url": "/api/sms/dispositions/{id}", "title": "Update an existing Disposition", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/dispositions/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateDispositions", "group": "Sms_Dispositions", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsDisposition/index.js", "groupTitle": "Sms_Dispositions" }, { "type": "post", "url": "/api/sms/interactions/{id}/tags", "title": "Add tags to the interaction", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/interaction/{id}/tags -d '{\"ids\": [1,2]}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "AddTags", "group": "Sms_Interactions", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsInteraction/index.js", "groupTitle": "Sms_Interactions" }, { "type": "post", "url": "/api/sms/interactions", "title": "Creates a new Interaction", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/interactions -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateInteractions", "group": "Sms_Interactions", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "Boolean", "optional": true, "field": "closed", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "closedAt", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "disposition", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "note", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "phone", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "read1stAt", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"in\"", "\"out\"" ], "optional": false, "field": "firstMsgDirection", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "lastMsgAt", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"in\"", "\"out\"" ], "optional": false, "field": "lastMsgDirection", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsInteraction/index.js", "groupTitle": "Sms_Interactions" }, { "type": "delete", "url": "/api/sms/interactions/{id}", "title": "Deletes a Interaction", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/interactions/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteInteractions", "group": "Sms_Interactions", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsInteraction/index.js", "groupTitle": "Sms_Interactions" }, { "type": "get", "url": "/api/sms/interactions/describe", "title": "Gets table info about Interactions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/interactions/describe -v -u {name}:{password}", "type": "json" } ], "name": "DescribeInteractions", "group": "Sms_Interactions", "description": "

Motion will return a HTTP status code 200 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsInteraction/index.js", "groupTitle": "Sms_Interactions" }, { "type": "get", "url": "/api/sms/interactions", "title": "Gets a list of Interactions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/interactions -v -u {name}:{password}", "type": "json" } ], "name": "GetInteractions", "group": "Sms_Interactions", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/sms/interactions?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/sms/interactions?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/sms/interactions?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/sms/interactions?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/sms/interactions?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/smsInteraction/index.js", "groupTitle": "Sms_Interactions" }, { "type": "delete", "url": "/api/sms/interactions/{id}/tags", "title": "Removes tags from interaction", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/interactions/{id}/tags?ids=1&ids=2 -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "RemoveTags", "group": "Sms_Interactions", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsInteraction/index.js", "groupTitle": "Sms_Interactions" }, { "type": "get", "url": "/api/sms/interactions/{id}", "title": "Gets a single Interaction", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/interactions/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowInteractions", "group": "Sms_Interactions", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsInteraction/index.js", "groupTitle": "Sms_Interactions" }, { "type": "post", "url": "/api/sms/interactions/{id}/messages", "title": "Creates new messages", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/interactions/{id}/messages -d '[{\"to\": \"+3901119886500\", \"...\": \"...\"}]' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addMessage", "group": "Sms_Interactions", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "Text", "optional": false, "field": "body", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "read", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"in\"", "\"out\"" ], "optional": false, "field": "direction", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "messageId", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "phone", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "readAt", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "secret", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsInteraction/index.js", "groupTitle": "Sms_Interactions" }, { "type": "get", "url": "/api/sms/interactions/{id}/messages", "title": "Gets interaction messages", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/interactions/{id}/messages -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getMessages", "group": "Sms_Interactions", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsInteraction/index.js", "groupTitle": "Sms_Interactions" }, { "type": "put", "url": "/api/sms/interactions/{id}", "title": "Update an existing Interaction", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/interactions/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateInteractions", "group": "Sms_Interactions", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsInteraction/index.js", "groupTitle": "Sms_Interactions" }, { "type": "post", "url": "/api/sms/messages", "title": "Creates a new Message", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/messages -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateMessages", "group": "Sms_Messages", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "Text", "optional": false, "field": "body", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "read", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"in\"", "\"out\"" ], "optional": false, "field": "direction", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "messageId", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "phone", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "readAt", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "secret", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsMessage/index.js", "groupTitle": "Sms_Messages" }, { "type": "delete", "url": "/api/sms/messages/{id}", "title": "Deletes a Message", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/messages/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteMessages", "group": "Sms_Messages", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsMessage/index.js", "groupTitle": "Sms_Messages" }, { "type": "get", "url": "/api/sms/messages/describe", "title": "Gets table info about Messages", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/messages/describe -v -u {name}:{password}", "type": "json" } ], "name": "DescribeMessages", "group": "Sms_Messages", "description": "

Motion will return a HTTP status code 200 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsMessage/index.js", "groupTitle": "Sms_Messages" }, { "type": "get", "url": "/api/sms/messages", "title": "Gets a list of Messages", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/messages -v -u {name}:{password}", "type": "json" } ], "name": "GetMessages", "group": "Sms_Messages", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/sms/messages?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/sms/messages?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/sms/messages?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/sms/messages?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/sms/messages?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/smsMessage/index.js", "groupTitle": "Sms_Messages" }, { "type": "get", "url": "/api/sms/messages/{id}", "title": "Gets a single Message", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/messages/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowMessages", "group": "Sms_Messages", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsMessage/index.js", "groupTitle": "Sms_Messages" }, { "type": "put", "url": "/api/sms/messages/{id}", "title": "Update an existing Message", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/messages/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateMessages", "group": "Sms_Messages", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsMessage/index.js", "groupTitle": "Sms_Messages" }, { "type": "post", "url": "/api/sms/reports/queue", "title": "Creates a new Sms Queue Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/reports/queue -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateSms_Queue_Reports", "group": "Sms_Queue_Reports", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "uniqueid", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "from", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "joinAt", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "leaveAt", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "acceptAt", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "exitAt", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "reason", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsQueueReport/index.js", "groupTitle": "Sms_Queue_Reports" }, { "type": "delete", "url": "/api/sms/reports/queue/{id}", "title": "Deletes a Sms Queue Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/reports/queue/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteSms_Queue_Reports", "group": "Sms_Queue_Reports", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsQueueReport/index.js", "groupTitle": "Sms_Queue_Reports" }, { "type": "get", "url": "/api/sms/reports/queue/describe", "title": "Gets table info about Sms Queue Reports", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/reports/queue/describe -v -u {name}:{password}", "type": "json" } ], "name": "DescribeSms_Queue_Reports", "group": "Sms_Queue_Reports", "description": "

Motion will return a HTTP status code 200 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsQueueReport/index.js", "groupTitle": "Sms_Queue_Reports" }, { "type": "get", "url": "/api/sms/reports/queue", "title": "Gets a list of Sms Queue Reports", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/reports/queue -v -u {name}:{password}", "type": "json" } ], "name": "GetSms_Queue_Reports", "group": "Sms_Queue_Reports", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/sms/reports/queue?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/sms/reports/queue?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/sms/reports/queue?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/sms/reports/queue?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/sms/reports/queue?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/smsQueueReport/index.js", "groupTitle": "Sms_Queue_Reports" }, { "type": "get", "url": "/api/sms/reports/queue/{id}", "title": "Gets a single Sms Queue Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/reports/queue/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowSms_Queue_Reports", "group": "Sms_Queue_Reports", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsQueueReport/index.js", "groupTitle": "Sms_Queue_Reports" }, { "type": "put", "url": "/api/sms/reports/queue/{id}", "title": "Update an existing Sms Queue Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/reports/queue/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateSms_Queue_Reports", "group": "Sms_Queue_Reports", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsQueueReport/index.js", "groupTitle": "Sms_Queue_Reports" }, { "type": "post", "url": "/api/sms/queues/{id}/users", "title": "Add agents to a queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/queues/{id}/users -d '{\"ids\": [1,2], \"penalty\": 2}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "AddAgents", "group": "Sms_Queues", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsQueue/index.js", "groupTitle": "Sms_Queues" }, { "type": "post", "url": "/api/sms/queues/{id}/teams", "title": "Add teams to a queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/queues/{id}/teams -d '{\"ids\": [1,2]}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "AddTeams", "group": "Sms_Queues", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsQueue/index.js", "groupTitle": "Sms_Queues" }, { "type": "post", "url": "/api/sms/queues", "title": "Creates a new Queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/queues -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateQueues", "group": "Sms_Queues", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": true, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "timeout", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"rrmemory\"", "\"beepall\"", "\"roundrobin\"" ], "optional": true, "field": "strategy", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsQueue/index.js", "groupTitle": "Sms_Queues" }, { "type": "delete", "url": "/api/sms/queues/{id}", "title": "Deletes a Queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/queues/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteQueues", "group": "Sms_Queues", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsQueue/index.js", "groupTitle": "Sms_Queues" }, { "type": "get", "url": "/api/sms/queues/describe", "title": "Gets table info about Queues", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/queues/describe -v -u {name}:{password}", "type": "json" } ], "name": "DescribeQueues", "group": "Sms_Queues", "description": "

Motion will return a HTTP status code 200 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsQueue/index.js", "groupTitle": "Sms_Queues" }, { "type": "get", "url": "/api/sms/queues/{id}/users", "title": "Gets queue agents", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/queues/{id}/users -v -u {name}:{password} -X POST", "type": "json" } ], "name": "GetAgents", "group": "Sms_Queues", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsQueue/index.js", "groupTitle": "Sms_Queues" }, { "type": "get", "url": "/api/sms/queues/{id}/members", "title": "GetMembers", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/queues/{id}/members -v -u {name}:{password}", "type": "json" } ], "name": "GetMembers", "group": "Sms_Queues", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsQueue/index.js", "groupTitle": "Sms_Queues" }, { "type": "get", "url": "/api/sms/queues", "title": "Gets a list of Queues", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/queues -v -u {name}:{password}", "type": "json" } ], "name": "GetQueues", "group": "Sms_Queues", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/sms/queues?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/sms/queues?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/sms/queues?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/sms/queues?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/sms/queues?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/smsQueue/index.js", "groupTitle": "Sms_Queues" }, { "type": "get", "url": "/api/sms/queues/{id}/teams", "title": "Gets queues list", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/queues/{id}/teams -v -u {name}:{password}", "type": "json" } ], "name": "GetTeams", "group": "Sms_Queues", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsQueue/index.js", "groupTitle": "Sms_Queues" }, { "type": "delete", "url": "/api/sms/queues/{id}/users", "title": "Removes agents from a queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/queues/{id}/users?ids=1&ids=2 -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "RemoveAgents", "group": "Sms_Queues", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsQueue/index.js", "groupTitle": "Sms_Queues" }, { "type": "get", "url": "/api/sms/queues/{id}", "title": "Gets a single Queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/queues/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowQueues", "group": "Sms_Queues", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsQueue/index.js", "groupTitle": "Sms_Queues" }, { "type": "put", "url": "/api/sms/queues/{id}", "title": "Update an existing Queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/queues/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateQueues", "group": "Sms_Queues", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsQueue/index.js", "groupTitle": "Sms_Queues" }, { "type": "get", "url": "/api/sounds", "title": "Gets a list of Sounds", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sounds -v -u {name}:{password}", "type": "json" } ], "name": "GetSounds", "group": "Sounds", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/sounds?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/sounds?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/sounds?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/sounds?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/sounds?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/sound/index.js", "groupTitle": "Sounds" }, { "type": "get", "url": "/api/sounds/{id}", "title": "Gets a single Sound", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sounds/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowSounds", "group": "Sounds", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/sound/index.js", "groupTitle": "Sounds" }, { "type": "post", "url": "/api/sounds", "title": "Create a new sound", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sounds -H 'Content-Type: multipart/form-data' -F 'file=@{filename}' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addSound", "group": "Sounds", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/sound/index.js", "groupTitle": "Sounds" }, { "type": "delete", "url": "/api/sounds/{id}", "title": "Deletes a sound", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sounds/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "destroySound", "group": "Sounds", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/sound/index.js", "groupTitle": "Sounds" }, { "type": "get", "url": "/api/sounds/{id}/download", "title": "Download Sound", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sounds/{id}/download -v -u {name}:{password} -X GET", "type": "json" } ], "name": "download", "group": "Sounds", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/sound/index.js", "groupTitle": "Sounds" }, { "type": "put", "url": "/api/sounds", "title": "Update an existing new sound", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sounds -d '[\"name\": \"sound_name\", \"description\": \"sound_desc\"]' -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateSound", "group": "Sounds", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/sound/index.js", "groupTitle": "Sounds" }, { "type": "post", "url": "/api/square/details/reports", "title": "Creates a new Square Detail Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/square/details/reports -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateSquare_Detail_Reports", "group": "Square_Details_Reports", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": true, "field": "uniqueid", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "node", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "application", "description": "" }, { "group": "Body", "type": "Text", "optional": true, "field": "data", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "project_name", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "callerid", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/squareReportDetail/index.js", "groupTitle": "Square_Details_Reports" }, { "type": "delete", "url": "/api/square/details/reports/{id}", "title": "Deletes a Square Detail Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/square/details/reports/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteSquare_Detail_Reports", "group": "Square_Details_Reports", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/squareReportDetail/index.js", "groupTitle": "Square_Details_Reports" }, { "type": "get", "url": "/api/square/details/reports/describe", "title": "Gets table info about Square Detail Reports", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/square/details/reports/describe -v -u {name}:{password}", "type": "json" } ], "name": "DescribeSquare_Detail_Reports", "group": "Square_Details_Reports", "description": "

Motion will return a HTTP status code 200 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/squareReportDetail/index.js", "groupTitle": "Square_Details_Reports" }, { "type": "get", "url": "/api/square/details/reports", "title": "Gets a list of Square Detail Reports", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/square/details/reports -v -u {name}:{password}", "type": "json" } ], "name": "GetSquare_Detail_Reports", "group": "Square_Details_Reports", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/square/details/reports?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/square/details/reports?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/square/details/reports?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/square/details/reports?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/square/details/reports?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/squareReportDetail/index.js", "groupTitle": "Square_Details_Reports" }, { "type": "get", "url": "/api/square/details/reports/{id}", "title": "Gets a single Square Detail Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/square/details/reports/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowSquare_Detail_Reports", "group": "Square_Details_Reports", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/squareReportDetail/index.js", "groupTitle": "Square_Details_Reports" }, { "type": "put", "url": "/api/square/details/reports/{id}", "title": "Update an existing Square Detail Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/square/details/reports/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateSquare_Detail_Reports", "group": "Square_Details_Reports", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/squareReportDetail/index.js", "groupTitle": "Square_Details_Reports" }, { "type": "post", "url": "/api/square/odbc", "title": "Creates a new ODBC", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/square/odbc -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateODBCs", "group": "Square_ODBC", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "dsn", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/squareOdbc/index.js", "groupTitle": "Square_ODBC" }, { "type": "delete", "url": "/api/square/odbc/{id}", "title": "Deletes a ODBC", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/square/odbc/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteODBCs", "group": "Square_ODBC", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/squareOdbc/index.js", "groupTitle": "Square_ODBC" }, { "type": "get", "url": "/api/square/odbc", "title": "Gets a list of ODBCs", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/square/odbc -v -u {name}:{password}", "type": "json" } ], "name": "GetODBCs", "group": "Square_ODBC", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/square/odbc?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/square/odbc?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/square/odbc?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/square/odbc?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/square/odbc?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/squareOdbc/index.js", "groupTitle": "Square_ODBC" }, { "type": "get", "url": "/api/square/odbc/{id}", "title": "Gets a single ODBC", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/square/odbc/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowODBCs", "group": "Square_ODBC", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/squareOdbc/index.js", "groupTitle": "Square_ODBC" }, { "type": "get", "url": "/api/square/odbc/{id}/test", "title": "Test Odbc", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/square/odbc/{id}/test -v -u {name}:{password} -X GET", "type": "json" } ], "name": "test", "group": "Square_ODBC", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/squareOdbc/index.js", "groupTitle": "Square_ODBC" }, { "type": "put", "url": "/api/square/odbc/{id}", "title": "Update an existing ODBC", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/square/odbc/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateODBCs", "group": "Square_ODBC", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/squareOdbc/index.js", "groupTitle": "Square_ODBC" }, { "type": "post", "url": "/api/square/projects", "title": "Creates a new Project", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/square/projects -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateProjects", "group": "Square_Projects", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" }, { "group": "Body", "type": "Text", "optional": true, "field": "notes", "description": "" }, { "group": "Body", "type": "Blob", "optional": true, "field": "preproduction", "description": "" }, { "group": "Body", "type": "Blob", "optional": true, "field": "production", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/squareProject/index.js", "groupTitle": "Square_Projects" }, { "type": "delete", "url": "/api/square/projects/{id}", "title": "Deletes a Project", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/square/projects/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteProjects", "group": "Square_Projects", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/squareProject/index.js", "groupTitle": "Square_Projects" }, { "type": "get", "url": "/api/square/projects", "title": "Gets a list of Projects", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/square/projects -v -u {name}:{password}", "type": "json" } ], "name": "GetProjects", "group": "Square_Projects", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/square/projects?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/square/projects?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/square/projects?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/square/projects?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/square/projects?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/squareProject/index.js", "groupTitle": "Square_Projects" }, { "type": "get", "url": "/api/square/projects/{id}", "title": "Gets a single Project", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/square/projects/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowProjects", "group": "Square_Projects", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/squareProject/index.js", "groupTitle": "Square_Projects" }, { "type": "put", "url": "/api/square/projects/{id}", "title": "Update an existing Project", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/square/projects/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateProjects", "group": "Square_Projects", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/squareProject/index.js", "groupTitle": "Square_Projects" }, { "type": "post", "url": "/api/square/recordings", "title": "Creates a new Recording", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/square/recordings -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateRecordings", "group": "Square_Recordings", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": true, "field": "uniqueid", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "callerid", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "calleridname", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "context", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "extension", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "priority", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "accountcode", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "dnid", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "projectName", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "saveName", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "filename", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "savePath", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/squareRecording/index.js", "groupTitle": "Square_Recordings" }, { "type": "delete", "url": "/api/square/recordings/{id}", "title": "Deletes a Recording", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/square/recordings/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteRecordings", "group": "Square_Recordings", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/squareRecording/index.js", "groupTitle": "Square_Recordings" }, { "type": "get", "url": "/api/square/recordings", "title": "Gets a list of Recordings", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/square/recordings -v -u {name}:{password}", "type": "json" } ], "name": "GetRecordings", "group": "Square_Recordings", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/square/recordings?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/square/recordings?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/square/recordings?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/square/recordings?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/square/recordings?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/squareRecording/index.js", "groupTitle": "Square_Recordings" }, { "type": "get", "url": "/api/square/recordings/{id}", "title": "Gets a single Recording", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/square/recordings/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowRecordings", "group": "Square_Recordings", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/squareRecording/index.js", "groupTitle": "Square_Recordings" }, { "type": "get", "url": "/api/square/recordings/{id}/download", "title": "Download Recording", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/square/recordings/{id}/download -v -u {name}:{password} -X GET", "type": "json" } ], "name": "download", "group": "Square_Recordings", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/squareRecording/index.js", "groupTitle": "Square_Recordings" }, { "type": "put", "url": "/api/square/recordings/{id}", "title": "Update an existing Recording", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/square/recordings/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateRecordings", "group": "Square_Recordings", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/squareRecording/index.js", "groupTitle": "Square_Recordings" }, { "type": "post", "url": "/api/square/reports", "title": "Creates a new Square Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/square/reports -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateSquare_Reports", "group": "Square_Reports", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": true, "field": "network", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "network_script", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "request", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "channel", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "language", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "type", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "uniqueid", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "version", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "callerid", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "calleridname", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "callingpres", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "callingani2", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "callington", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "callingtns", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "dnid", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "rdnis", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "context", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "extension", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "priority", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "enhanced", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "accountcode", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "threadid", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "project_name", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "joinAt", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "leaveAt", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/squareReport/index.js", "groupTitle": "Square_Reports" }, { "type": "delete", "url": "/api/square/reports/{id}", "title": "Deletes a Square Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/square/reports/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteSquare_Reports", "group": "Square_Reports", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/squareReport/index.js", "groupTitle": "Square_Reports" }, { "type": "get", "url": "/api/square/reports/describe", "title": "Gets table info about Square Reports", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/square/reports/describe -v -u {name}:{password}", "type": "json" } ], "name": "DescribeSquare_Reports", "group": "Square_Reports", "description": "

Motion will return a HTTP status code 200 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/squareReport/index.js", "groupTitle": "Square_Reports" }, { "type": "get", "url": "/api/square/reports", "title": "Gets a list of Square Reports", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/square/reports -v -u {name}:{password}", "type": "json" } ], "name": "GetSquare_Reports", "group": "Square_Reports", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/square/reports?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/square/reports?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/square/reports?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/square/reports?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/square/reports?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/squareReport/index.js", "groupTitle": "Square_Reports" }, { "type": "get", "url": "/api/square/reports/{id}", "title": "Gets a single Square Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/square/reports/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowSquare_Reports", "group": "Square_Reports", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/squareReport/index.js", "groupTitle": "Square_Reports" }, { "type": "put", "url": "/api/square/reports/{id}", "title": "Update an existing Square Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/square/reports/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateSquare_Reports", "group": "Square_Reports", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/squareReport/index.js", "groupTitle": "Square_Reports" }, { "type": "post", "url": "/api/integrations/sugarcrm/configurations", "title": "Creates a new SugarCRM Configuration", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/sugarcrm/configurations -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateSugarCRM_Configurations", "group": "SugarCRM_Configurations", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": true, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intSugarcrmConfiguration/index.js", "groupTitle": "SugarCRM_Configurations" }, { "type": "delete", "url": "/api/integrations/sugarcrm/configurations/{id}", "title": "Deletes a SugarCRM Configuration", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/sugarcrm/configurations/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteSugarCRM_Configurations", "group": "SugarCRM_Configurations", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intSugarcrmConfiguration/index.js", "groupTitle": "SugarCRM_Configurations" }, { "type": "get", "url": "/api/integrations/sugarcrm/configurations", "title": "Gets a list of SugarCRM Configurations", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/sugarcrm/configurations -v -u {name}:{password}", "type": "json" } ], "name": "GetSugarCRM_Configurations", "group": "SugarCRM_Configurations", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/integrations/sugarcrm/configurations?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/integrations/sugarcrm/configurations?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/integrations/sugarcrm/configurations?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/integrations/sugarcrm/configurations?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/integrations/sugarcrm/configurations?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/intSugarcrmConfiguration/index.js", "groupTitle": "SugarCRM_Configurations" }, { "type": "get", "url": "/api/integrations/sugarcrm/configurations/{id}", "title": "Gets a single SugarCRM Configuration", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/sugarcrm/configurations/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowSugarCRM_Configurations", "group": "SugarCRM_Configurations", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intSugarcrmConfiguration/index.js", "groupTitle": "SugarCRM_Configurations" }, { "type": "put", "url": "/api/integrations/sugarcrm/configurations/{id}", "title": "Update an existing SugarCRM Configuration", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/sugarcrm/configurations/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateSugarCRM_Configurations", "group": "SugarCRM_Configurations", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intSugarcrmConfiguration/index.js", "groupTitle": "SugarCRM_Configurations" }, { "type": "post", "url": "/api/integrations/sugarcrm/accounts", "title": "Creates a new Sugarcrm Account", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/sugarcrm/accounts -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateSugarcrm_Accounts", "group": "Sugarcrm_Accounts", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": true, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "username", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "password", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "remoteUri", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "serverUrl", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intSugarcrmAccount/index.js", "groupTitle": "Sugarcrm_Accounts" }, { "type": "delete", "url": "/api/integrations/sugarcrm/accounts/{id}", "title": "Deletes a Sugarcrm Account", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/sugarcrm/accounts/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteSugarcrm_Accounts", "group": "Sugarcrm_Accounts", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intSugarcrmAccount/index.js", "groupTitle": "Sugarcrm_Accounts" }, { "type": "get", "url": "/api/integrations/sugarcrm/accounts", "title": "Gets a list of Sugarcrm Accounts", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/sugarcrm/accounts -v -u {name}:{password}", "type": "json" } ], "name": "GetSugarcrm_Accounts", "group": "Sugarcrm_Accounts", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/integrations/sugarcrm/accounts?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/integrations/sugarcrm/accounts?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/integrations/sugarcrm/accounts?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/integrations/sugarcrm/accounts?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/integrations/sugarcrm/accounts?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/intSugarcrmAccount/index.js", "groupTitle": "Sugarcrm_Accounts" }, { "type": "get", "url": "/api/integrations/sugarcrm/accounts/{id}", "title": "Gets a single Sugarcrm Account", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/sugarcrm/accounts/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowSugarcrm_Accounts", "group": "Sugarcrm_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intSugarcrmAccount/index.js", "groupTitle": "Sugarcrm_Accounts" }, { "type": "post", "url": "/api/integrations/sugarcrm/accounts/{id}/configurations", "title": "Creates new configuration", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/sugarcrm/accounts/{id}/configurations -d '{\"name\": \"conf1\"}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addConfiguration", "group": "Sugarcrm_Accounts", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intSugarcrmAccount/index.js", "groupTitle": "Sugarcrm_Accounts" }, { "type": "get", "url": "/api/integrations/sugarcrm/accounts/{id}/configurations", "title": "Gets account configurations", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/sugarcrm/accounts/{id}/configurations -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getConfigurations", "group": "Sugarcrm_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intSugarcrmAccount/index.js", "groupTitle": "Sugarcrm_Accounts" }, { "type": "get", "url": "/api/integrations/sugarcrm/accounts/{id}/fields", "title": "Gets account fields", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/sugarcrm/accounts/{id}/fields -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getFields", "group": "Sugarcrm_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intSugarcrmAccount/index.js", "groupTitle": "Sugarcrm_Accounts" }, { "type": "put", "url": "/api/integrations/sugarcrm/accounts/{id}", "title": "Update an existing Sugarcrm Account", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/sugarcrm/accounts/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateSugarcrm_Accounts", "group": "Sugarcrm_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intSugarcrmAccount/index.js", "groupTitle": "Sugarcrm_Accounts" }, { "type": "get", "url": "/api/integrations/sugarcrm/configurations/{id}/descriptions", "title": "Gets configurations descriptions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/sugarcrm/configurations/{id}/descriptions -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getDescriptions", "group": "Sugarcrm_Configurations", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intSugarcrmConfiguration/index.js", "groupTitle": "Sugarcrm_Configurations" }, { "type": "get", "url": "/api/integrations/sugarcrm/configurations/{id}/fields", "title": "Gets configurations fields", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/sugarcrm/configurations/{id}/fields -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getFields", "group": "Sugarcrm_Configurations", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intSugarcrmConfiguration/index.js", "groupTitle": "Sugarcrm_Configurations" }, { "type": "get", "url": "/api/integrations/sugarcrm/configurations/{id}/subjects", "title": "Gets configurations subjects", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/sugarcrm/configurations/{id}/subjects -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getSubjects", "group": "Sugarcrm_Configurations", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intSugarcrmConfiguration/index.js", "groupTitle": "Sugarcrm_Configurations" }, { "type": "post", "url": "/api/integrations/sugarcrm/fields", "title": "Creates a new Sugarcrm Field", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/sugarcrm/fields -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateSugarcrm_Fields", "group": "Sugarcrm_Fields", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "allowedValues": [ "\"string\"", "\"variable\"", "\"customVariable\"", "\"keyValue\"" ], "optional": true, "field": "type", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "content", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "key", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"string\"", "\"variable\"", "\"customVariable\"" ], "optional": true, "field": "keyType", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "keyContent", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "idField", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "nameField", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "customField", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "variableName", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intSugarcrmField/index.js", "groupTitle": "Sugarcrm_Fields" }, { "type": "delete", "url": "/api/integrations/sugarcrm/fields/{id}", "title": "Deletes a Sugarcrm Field", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/sugarcrm/fields/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteSugarcrm_Fields", "group": "Sugarcrm_Fields", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intSugarcrmField/index.js", "groupTitle": "Sugarcrm_Fields" }, { "type": "get", "url": "/api/integrations/sugarcrm/fields", "title": "Gets a list of Sugarcrm Fields", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/sugarcrm/fields -v -u {name}:{password}", "type": "json" } ], "name": "GetSugarcrm_Fields", "group": "Sugarcrm_Fields", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/integrations/sugarcrm/fields?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/integrations/sugarcrm/fields?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/integrations/sugarcrm/fields?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/integrations/sugarcrm/fields?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/integrations/sugarcrm/fields?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/intSugarcrmField/index.js", "groupTitle": "Sugarcrm_Fields" }, { "type": "get", "url": "/api/integrations/sugarcrm/fields/{id}", "title": "Gets a single Sugarcrm Field", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/sugarcrm/fields/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowSugarcrm_Fields", "group": "Sugarcrm_Fields", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intSugarcrmField/index.js", "groupTitle": "Sugarcrm_Fields" }, { "type": "put", "url": "/api/integrations/sugarcrm/fields/{id}", "title": "Update an existing Sugarcrm Field", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/sugarcrm/fields/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateSugarcrm_Fields", "group": "Sugarcrm_Fields", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intSugarcrmField/index.js", "groupTitle": "Sugarcrm_Fields" }, { "type": "get", "url": "/api/system/process", "title": "Gets system information", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/system -v -u {name}:{password}", "type": "json" } ], "name": "GetSystemInformation", "group": "System_Information", "description": "

Motion returns the system information.

", "version": "0.0.0", "filename": "server/api/system/index.js", "groupTitle": "System_Information" }, { "type": "get", "url": "/api/system", "title": "Gets system information", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/system -v -u {name}:{password}", "type": "json" } ], "name": "GetSystemInformation", "group": "System_Information", "description": "

Motion returns the system information.

", "version": "0.0.0", "filename": "server/api/system/index.js", "groupTitle": "System_Information" }, { "type": "post", "url": "/api/tags", "title": "Creates a new Tag", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/tags -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateTags", "group": "Tags", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "color", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/tag/index.js", "groupTitle": "Tags" }, { "type": "delete", "url": "/api/tags/{id}", "title": "Deletes a Tag", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/tags/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteTags", "group": "Tags", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/tag/index.js", "groupTitle": "Tags" }, { "type": "get", "url": "/api/tags", "title": "Gets a list of Tags", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/tags -v -u {name}:{password}", "type": "json" } ], "name": "GetTags", "group": "Tags", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/tags?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/tags?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/tags?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/tags?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/tags?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/tag/index.js", "groupTitle": "Tags" }, { "type": "get", "url": "/api/tags/{id}", "title": "Gets a single Tag", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/tags/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowTags", "group": "Tags", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/tag/index.js", "groupTitle": "Tags" }, { "type": "put", "url": "/api/tags/{id}", "title": "Update an existing Tag", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/tags/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateTags", "group": "Tags", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/tag/index.js", "groupTitle": "Tags" }, { "type": "post", "url": "/api/teams/{id}/queues", "title": "Add queues to a team", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/teams/{id}/queues -d '{\"ids\": [1,2]}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "AddQueues", "group": "Teams", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/team/index.js", "groupTitle": "Teams" }, { "type": "post", "url": "/api/teams", "title": "Creates a new Team", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/teams -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateTeams", "group": "Teams", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/team/index.js", "groupTitle": "Teams" }, { "type": "delete", "url": "/api/teams/{id}", "title": "Deletes a Team", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/teams/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteTeams", "group": "Teams", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/team/index.js", "groupTitle": "Teams" }, { "type": "get", "url": "/api/teams/{id}/users", "title": "Gets agents from team", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/teams/{id}/users -v -u {name}:{password} -X GET", "type": "json" } ], "name": "GetAgents", "group": "Teams", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/team/index.js", "groupTitle": "Teams" }, { "type": "get", "url": "/api/teams/{id}/queues?channel={channel}", "title": "Gets Queues list", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/teams/{id}/queues?channel={channel} -v -u {name}:{password}", "type": "json" } ], "name": "GetQueues", "group": "Teams", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/team/index.js", "groupTitle": "Teams" }, { "type": "get", "url": "/api/teams", "title": "Gets a list of Teams", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/teams -v -u {name}:{password}", "type": "json" } ], "name": "GetTeams", "group": "Teams", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/teams?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/teams?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/teams?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/teams?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/teams?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/team/index.js", "groupTitle": "Teams" }, { "type": "delete", "url": "/api/teams/{id}/users", "title": "Removes agents from a team", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/teams/{id}/users?ids=1&ids=2 -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "RemoveAgents", "group": "Teams", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/team/index.js", "groupTitle": "Teams" }, { "type": "delete", "url": "/api/teams/{id}/queues", "title": "Remove queues to a team", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/teams/{id}/queues?channel=voice&ids=1&ids=2 -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "RemoveQueues", "group": "Teams", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/team/index.js", "groupTitle": "Teams" }, { "type": "delete", "url": "/api/sms/queues/{id}/teams", "title": "Remove teams from a queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/sms/queues/{id}/teams -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "RemoveTeams", "group": "Teams", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/smsQueue/index.js", "groupTitle": "Teams" }, { "type": "delete", "url": "/api/fax/queues/{id}/teams", "title": "Remove teams from a queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/fax/queues/{id}/teams -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "RemoveTeams", "group": "Teams", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/faxQueue/index.js", "groupTitle": "Teams" }, { "type": "delete", "url": "/api/mail/queues/{id}/teams", "title": "Remove teams from a queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/mail/queues/{id}/teams -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "RemoveTeams", "group": "Teams", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/mailQueue/index.js", "groupTitle": "Teams" }, { "type": "delete", "url": "/api/openchannel/queues/{id}/teams", "title": "Remove teams from a queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/openchannel/queues/{id}/teams -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "RemoveTeams", "group": "Teams", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/openchannelQueue/index.js", "groupTitle": "Teams" }, { "type": "delete", "url": "/api/chat/queues/{id}/teams", "title": "Remove teams from a queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/chat/queues/{id}/teams -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "RemoveTeams", "group": "Teams", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/chatQueue/index.js", "groupTitle": "Teams" }, { "type": "delete", "url": "/api/voice/queues/{id}/teams", "title": "Remove teams from a queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/queues/{id}/teams -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "RemoveTeams", "group": "Teams", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceQueue/index.js", "groupTitle": "Teams" }, { "type": "get", "url": "/api/teams/{id}", "title": "Gets a single Team", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/teams/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowTeams", "group": "Teams", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/team/index.js", "groupTitle": "Teams" }, { "type": "post", "url": "/api/teams/{id}/users", "title": "Adds agents to a team", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/teams/{id}/users -d '{\"ids\": [1,2]}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addAgents", "group": "Teams", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/team/index.js", "groupTitle": "Teams" }, { "type": "put", "url": "/api/teams/{id}", "title": "Update an existing Team", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/teams/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateTeams", "group": "Teams", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/team/index.js", "groupTitle": "Teams" }, { "type": "post", "url": "/api/templates", "title": "Creates a new Template", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/templates -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateTemplates", "group": "Templates", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": true, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" }, { "group": "Body", "type": "Text", "optional": true, "field": "html", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/template/index.js", "groupTitle": "Templates" }, { "type": "delete", "url": "/api/templates/{id}", "title": "Deletes a Template", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/templates/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteTemplates", "group": "Templates", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/template/index.js", "groupTitle": "Templates" }, { "type": "get", "url": "/api/templates", "title": "Gets a list of Templates", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/templates -v -u {name}:{password}", "type": "json" } ], "name": "GetTemplates", "group": "Templates", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/templates?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/templates?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/templates?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/templates?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/templates?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/template/index.js", "groupTitle": "Templates" }, { "type": "get", "url": "/api/templates/{id}", "title": "Gets a single Template", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/templates/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowTemplates", "group": "Templates", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/template/index.js", "groupTitle": "Templates" }, { "type": "put", "url": "/api/templates/{id}", "title": "Update an existing Template", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/templates/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateTemplates", "group": "Templates", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/template/index.js", "groupTitle": "Templates" }, { "type": "post", "url": "/api/triggers", "title": "Creates a new Trigger", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/triggers -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateTriggers", "group": "Triggers", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": true, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "channel", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "status", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/trigger/index.js", "groupTitle": "Triggers" }, { "type": "delete", "url": "/api/triggers/{id}", "title": "Deletes a Trigger", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/triggers/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteTriggers", "group": "Triggers", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/trigger/index.js", "groupTitle": "Triggers" }, { "type": "get", "url": "/api/triggers", "title": "Gets a list of Triggers", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/triggers -v -u {name}:{password}", "type": "json" } ], "name": "GetTriggers", "group": "Triggers", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/triggers?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/triggers?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/triggers?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/triggers?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/triggers?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/trigger/index.js", "groupTitle": "Triggers" }, { "type": "get", "url": "/api/triggers/{id}", "title": "Gets a single Trigger", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/triggers/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowTriggers", "group": "Triggers", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/trigger/index.js", "groupTitle": "Triggers" }, { "type": "post", "url": "/api/triggers/{id}/actions", "title": "Creates new actions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/triggers/{id}/actions -d '{\"action\": \"contactManager\",\"data1\": \"1\"}' -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addAction", "group": "Triggers", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "Virtual", "optional": true, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "action", "description": "

Allowed values: contactManager, integration, motionbar, jscripty, urlForward, browser

" }, { "group": "Body", "type": "String", "optional": true, "field": "data1", "description": "

contactManager[ListId], integration[intName(zendesk)], motionbar[Popup(0),URL(1),WinApp(2)], urlForward[GET,POST], browser[TemplateId(0),URL(1)]

" }, { "group": "Body", "type": "String", "optional": true, "field": "data2", "description": "

integration[AccountId], motionbar[TemplateId,URL,WinAppPath], urlForward[URL]

" }, { "group": "Body", "type": "String", "optional": true, "field": "data3", "description": "

motionbar[NULL,NULL,WinAppArguments]

" }, { "group": "Body", "type": "String", "optional": true, "field": "data4", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "data5", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "data6", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/trigger/index.js", "groupTitle": "Triggers" }, { "type": "post", "url": "/api/triggers/{id}/all_conditions", "title": "Creates a new \"AND\"condition", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/triggers/{id}/all_conditions -d '{\"field\": \"name\", \"operator\": \"equal\", \"value\": \"John Doe\"}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addAllCondition", "group": "Triggers", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "Virtual", "optional": true, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "field", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "operator", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "value", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/trigger/index.js", "groupTitle": "Triggers" }, { "type": "post", "url": "/api/triggers/{id}/any_conditions", "title": "Creates a new \"OR\"condition", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/triggers/{id}/any_conditions -d '{\"field\": \"name\", \"operator\": \"equal\", \"value\": \"John Doe\"}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addAnyCondition", "group": "Triggers", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "Virtual", "optional": true, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "field", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "operator", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "value", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/trigger/index.js", "groupTitle": "Triggers" }, { "type": "get", "url": "/api/triggers/{id}/actions", "title": "Gets Trigger Actions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/triggers/{id}/actions -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getActions", "group": "Triggers", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/trigger/index.js", "groupTitle": "Triggers" }, { "type": "get", "url": "/api/triggers/{id}/all_conditions", "title": "Gets \"AND\" Trigger Conditions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/triggers/{id}/all_conditions -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getAllConditions", "group": "Triggers", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/trigger/index.js", "groupTitle": "Triggers" }, { "type": "get", "url": "/api/triggers/{id}/any_conditions", "title": "Gets \"OR\" Trigger Conditions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/triggers/{id}/any_conditions -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getAnyConditions", "group": "Triggers", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/trigger/index.js", "groupTitle": "Triggers" }, { "type": "put", "url": "/api/triggers/{id}", "title": "Update an existing Trigger", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/triggers/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateTriggers", "group": "Triggers", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/trigger/index.js", "groupTitle": "Triggers" }, { "type": "post", "url": "/api/trunks", "title": "Create a new trunk", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/trunks -v -u {name}:{password} -X POST", "type": "json" } ], "name": "Create", "group": "Trunks", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "name", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"friend\"", "\"user\"", "\"peer\"" ], "optional": false, "field": "type", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "context", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"ALLOWED_NOT_SCREENED\"", "\"ALLOWED_PASSED_SCREEN\"", "\"ALLOWED_FAILED_SCREEN\"", "\"ALLOWED\"", "\"PROHIB_NOT_SCREENED\"", "\"PROHIB_PASSED_SCREEN\"", "\"PROHIB_FAILED_SCREEN\"", "\"PROHIB\"" ], "optional": true, "field": "callingpres", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "deny", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "permit", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "secret", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "md5secret", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "remotesecret", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "transport", "description": "

String is deprecated. Please use an Array as ["udp", "tcp"]

" }, { "group": "Body", "type": "String", "allowedValues": [ "\"rfc2833\"", "\"info\"", "\"shortinfo\"", "\"inband\"", "\"auto\"" ], "optional": true, "field": "dtmfmode", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"", "\"nonat\"", "\"update\"", "\"outgoing\"" ], "optional": true, "field": "directmedia", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "directrtpsetup", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "directmediapermit", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "directmediadeny", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "nat", "description": "

String is deprecated. Please use an Array as ["force_rport", "comedia"]

" }, { "group": "Body", "type": "String", "optional": true, "field": "callgroup", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "namedcallgroup", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "pickupgroup", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "namedpickupgroup", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "language", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "tonezone", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "disallow", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "allow", "description": "

String is deprecated. Please use an Array as ["ulaw", "alaw", "alaw"]

" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "autoframing", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "insecure", "description": "

String is deprecated. Please use an Array as ["port", "invite"]

" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "trustrpid", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "trust_id_outbound", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"", "\"never\"" ], "optional": true, "field": "progressinband", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "promiscredir", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "useclientcode", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "accountcode", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "setvar", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "callerid", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "amaflags", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "callcounter", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "busylevel", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "allowoverlap", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "allowsubscribe", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "allowtransfer", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "ignoresdpversion", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "subscribecontext", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "template", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"", "\"always\"" ], "optional": true, "field": "videosupport", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "maxcallbitrate", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "rfc2833compensate", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "mailbox", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"accept\"", "\"refuse\"", "\"originate\"" ], "optional": true, "field": "session_timers", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "session_expires", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "session_minse", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"uac\"", "\"uas\"" ], "optional": true, "field": "session_refresher", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "t38pt_usertpsource", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "regexten", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "fromdomain", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "fromuser", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "port", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "qualify", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "keepalive", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "defaultip", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "defaultuser", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "rtptimeout", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "rtpholdtimeout", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "rtpkeepalive", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"", "\"pai\"" ], "optional": true, "field": "sendrpid", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "outboundproxy", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "callbackextension", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "timert1", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "timerb", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "qualifyfreq", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "contactpermit", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "contactdeny", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "contactacl", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "unsolicited_mailbox", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "use_q850_reason", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "maxforwards", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "encryption", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "avpf", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "force_avp", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "icesupport", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "dtlsenable", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"", "\"fingerprint\"", "\"certificate\"" ], "optional": true, "field": "dtlsverify", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "dtlsrekey", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "dtlscertfile", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "dtlsprivatekey", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "dtlscipher", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "dtlscafile", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "dtlscapath", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"active\"", "\"passive\"", "\"actpass\"" ], "optional": true, "field": "dtlssetup", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "dtlsfingerprint", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "usereqphone", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "recordonfeature", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "recordofffeature", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "call_limit", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "registertrying", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "subscribemwi", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "vmexten", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "mohinterpret", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "mohsuggest", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "parkinglot", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "host", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"", "\"nonat\"", "\"update\"", "\"update,nonat\"" ], "optional": true, "field": "canreinvite", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "registry", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "otherFields", "description": "" }, { "group": "Body", "type": "Boolean", "optional": false, "field": "active", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "t38pt_udptl", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/trunk/index.js", "groupTitle": "Trunks" }, { "type": "delete", "url": "/api/trunks/{id}", "title": "Deletes a trunk", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/trunks/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "Delete", "group": "Trunks", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/trunk/index.js", "groupTitle": "Trunks" }, { "type": "get", "url": "/api/trunks", "title": "Gets a list of Trunks", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/trunks -v -u {name}:{password}", "type": "json" } ], "name": "GetTrunks", "group": "Trunks", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/trunks?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/trunks?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/trunks?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/trunks?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/trunks?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/trunk/index.js", "groupTitle": "Trunks" }, { "type": "get", "url": "/api/trunks/{id}", "title": "Gets a single Trunk", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/trunks/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowTrunks", "group": "Trunks", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/trunk/index.js", "groupTitle": "Trunks" }, { "type": "put", "url": "/api/trunks/{id}", "title": "Update an existing trunk", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/trunks/{id} -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "Update", "group": "Trunks", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/trunk/index.js", "groupTitle": "Trunks" }, { "type": "post", "url": "/api/users/{id}/contacts", "title": "Add contacts to a user", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/users/{id}/contacts -d '{\"ids\": [1,2]}' -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "AddContacts", "group": "Users", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/user/index.js", "groupTitle": "Users" }, { "type": "post", "url": "/api/users/{id}/queues", "title": "Add queues to an agent", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/users/{id}/queues -d '{\"ids\": [1,2], \"penalty\": 2}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "AddQueues", "group": "Users", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/user/index.js", "groupTitle": "Users" }, { "type": "post", "url": "/api/users/{id}/teams", "title": "Add teams to an agent", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/users/{id}/teams -d '{\"ids\": [1,2]}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "AddTeams", "group": "Users", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/user/index.js", "groupTitle": "Users" }, { "type": "post", "url": "/api/users/create_many", "title": "Creates many Users", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/users/create_many -d '[{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}]' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "BulkCreateUsers", "group": "Users", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "name", "description": "

The name of the user

" }, { "group": "Body", "type": "String", "optional": false, "field": "fullname", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "email", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"admin\"", "\"user\"", "\"agent\"", "\"telephone\"" ], "optional": false, "field": "role", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "password", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "provider", "description": "" }, { "group": "Body", "type": "Integer", "optional": false, "field": "internal", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "salt", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "phone", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "mobile", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "address", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "zipcode", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "userpic", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "city", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "country", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "online", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "lastLoginAt", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "voicePause", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "chatPause", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "mailPause", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "faxPause", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "smsPause", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "openchannelPause", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "pauseType", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "lastPauseAt", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "chatCapacity", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "mailCapacity", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "faxCapacity", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "smsCapacity", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "openchannelCapacity", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "phoneBarAutoAnswer", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "phoneBarEnableSettings", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "phoneBarListenPort", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "phoneBarExpires", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "phoneBarRemoteControl", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "phoneBarRemoteControlPort", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "phoneBarEnableRecording", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "phoneBarRingInUse", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "chanspy", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "host", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "ipaddr", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "port", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "regseconds", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "fullcontact", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "regserver", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "useragent", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "lastms", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"friend\"", "\"user\"", "\"peer\"" ], "optional": true, "field": "type", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "context", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"ALLOWED_NOT_SCREENED\"", "\"ALLOWED_PASSED_SCREEN\"", "\"ALLOWED_FAILED_SCREEN\"", "\"ALLOWED\"", "\"PROHIB_NOT_SCREENED\"", "\"PROHIB_PASSED_SCREEN\"", "\"PROHIB_FAILED_SCREEN\"", "\"PROHIB\"" ], "optional": true, "field": "callingpres", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "deny", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "permit", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "secret", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "md5secret", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "remotesecret", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "transport", "description": "

String is deprecated. Please use an Array as ["udp", "tcp"]

" }, { "group": "Body", "type": "String", "allowedValues": [ "\"rfc2833\"", "\"info\"", "\"shortinfo\"", "\"inband\"", "\"auto\"" ], "optional": true, "field": "dtmfmode", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"", "\"nonat\"", "\"update\"", "\"outgoing\"" ], "optional": true, "field": "directmedia", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "directrtpsetup", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "directmediapermit", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "directmediadeny", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "nat", "description": "

String is deprecated. Please use an Array as ["force_rport", "comedia"]

" }, { "group": "Body", "type": "String", "optional": true, "field": "callgroup", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "namedcallgroup", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "pickupgroup", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "namedpickupgroup", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "language", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "tonezone", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "disallow", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "allow", "description": "

String is deprecated. Please use an Array as ["ulaw", "alaw", "gsm"]

" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "autoframing", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "insecure", "description": "

String is deprecated. Please use an Array as ["port", "invite"]

" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "trustrpid", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "trust_id_outbound", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"", "\"never\"" ], "optional": true, "field": "progressinband", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "promiscredir", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "useclientcode", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "accountcode", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "setvar", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "callerid", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "amaflags", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "callcounter", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "busylevel", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "allowoverlap", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "allowsubscribe", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "allowtransfer", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "ignoresdpversion", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "subscribecontext", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "template", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"", "\"always\"" ], "optional": true, "field": "videosupport", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "maxcallbitrate", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "rfc2833compensate", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "mailbox", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"accept\"", "\"refuse\"", "\"originate\"" ], "optional": true, "field": "session_timers", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "session_expires", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "session_minse", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"uac\"", "\"uas\"" ], "optional": true, "field": "session_refresher", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "t38pt_usertpsource", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "regexten", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "fromdomain", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "fromuser", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "qualify", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "keepalive", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "defaultip", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "defaultuser", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "rtptimeout", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "rtpholdtimeout", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "rtpkeepalive", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "sendrpid", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "outboundproxy", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "callbackextension", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "timert1", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "timerb", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "qualifyfreq", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "contactpermit", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "contactdeny", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "contactacl", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "unsolicited_mailbox", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "use_q850_reason", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "maxforwards", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "encryption", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "avpf", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "force_avp", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "icesupport", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "dtlsenable", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"", "\"fingerprint\"", "\"certificate\"" ], "optional": true, "field": "dtlsverify", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "dtlsrekey", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "dtlscertfile", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "dtlsprivatekey", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "dtlscipher", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "dtlscafile", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "dtlscapath", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"active\"", "\"passive\"", "\"actpass\"" ], "optional": true, "field": "dtlssetup", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "dtlsfingerprint", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "usereqphone", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "recordonfeature", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "recordofffeature", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "call_limit", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "registertrying", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "subscribemwi", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "vmexten", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "mohinterpret", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "mohsuggest", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "parkinglot", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"", "\"nonat\"", "\"update\"", "\"update,nonat\"" ], "optional": true, "field": "canreinvite", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "loginInPause", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "resetPasswordToken", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "resetPasswordExpires", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "showWebBar", "description": "" }, { "group": "Body", "type": "Text", "optional": true, "field": "permissions", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "phoneBarUnconditionalNumber", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "phoneBarNoReplyNumber", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "phoneBarBusyNumber", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "phoneBarUnconditional", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "phoneBarNoReply", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "phoneBarBusy", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "phoneBarDnd", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "phoneBarUnansweredCallBadge", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "phoneBarEnableDtmfTone", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "phoneBarAutoAnswerDelay", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "extensionMonitor", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "crudPermissions", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "rtcp_mux", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "allowmessenger", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "phoneBarOutboundProxy", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "passwordResetAt", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/user/index.js", "groupTitle": "Users" }, { "type": "put", "url": "/api/users/{id}/password", "title": "Change user password", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/users/{id}/password -d '{\"oldPassword\": \"1234\", \"newPassword\": \"5678\"}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "ChangePwd", "group": "Users", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/user/index.js", "groupTitle": "Users" }, { "type": "post", "url": "/api/users", "title": "Create a new user", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/users -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "Create", "group": "Users", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/user/index.js", "groupTitle": "Users" }, { "type": "delete", "url": "/api/users/{id}", "title": "Deletes a user", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/users/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "Delete", "group": "Users", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/user/index.js", "groupTitle": "Users" }, { "type": "get", "url": "/api/users/describe", "title": "Gets table info about Users", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/users/describe -v -u {name}:{password}", "type": "json" } ], "name": "DescribeUsers", "group": "Users", "description": "

Motion will return a HTTP status code 200 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/user/index.js", "groupTitle": "Users" }, { "type": "get", "url": "/api/users/{id}/agents", "title": "GetAgents", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/users/{id}/agents -v -u {name}:{password}", "type": "json" } ], "name": "GetAgents", "group": "Users", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/user/index.js", "groupTitle": "Users" }, { "type": "get", "url": "/api/users/{id}/groups", "title": "GetChatGroups", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/users/{id}/groups -v -u {name}:{password}", "type": "json" } ], "name": "GetChatGroups", "group": "Users", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/user/index.js", "groupTitle": "Users" }, { "type": "get", "url": "/api/users/{id}/chat/interactions", "title": "GetChatInteractions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/users/{id}/chat/interactions -v -u {name}:{password}", "type": "json" } ], "name": "GetChatInteractions", "group": "Users", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/user/index.js", "groupTitle": "Users" }, { "type": "get", "url": "/api/users/{id}/contacts", "title": "GetContacts", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/users/{id}/contacts -v -u {name}:{password}", "type": "json" } ], "name": "GetContacts", "group": "Users", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/user/index.js", "groupTitle": "Users" }, { "type": "get", "url": "/api/users/{id}/fax/interactions", "title": "GetFaxInteractions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/users/{id}/fax/interactions -v -u {name}:{password}", "type": "json" } ], "name": "GetFaxInteractions", "group": "Users", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/user/index.js", "groupTitle": "Users" }, { "type": "get", "url": "/api/users/{id}/lists", "title": "GetLists", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/users/{id}/lists -v -u {name}:{password}", "type": "json" } ], "name": "GetLists", "group": "Users", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/user/index.js", "groupTitle": "Users" }, { "type": "get", "url": "/api/users/{id}/mail/interactions", "title": "GetMailInteractions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/users/{id}/mail/interactions -v -u {name}:{password}", "type": "json" } ], "name": "GetMailInteractions", "group": "Users", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/user/index.js", "groupTitle": "Users" }, { "type": "get", "url": "/api/users/{id}/openchannel/interactions", "title": "GetOpenchannelInteractions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/users/{id}/openchannel/interactions -v -u {name}:{password}", "type": "json" } ], "name": "GetOpenchannelInteractions", "group": "Users", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/user/index.js", "groupTitle": "Users" }, { "type": "get", "url": "/api/users/{id}/queues?channel={channel}", "title": "Gets Queues list", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/users/{id}/queues/?channel={channel} -v -u {name}:{password}", "type": "json" } ], "name": "GetQueues", "group": "Users", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/user/index.js", "groupTitle": "Users" }, { "type": "get", "url": "/api/users/{id}/recordings", "title": "GetRecordings", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/users/{id}/recordings -v -u {name}:{password}", "type": "json" } ], "name": "GetRecordings", "group": "Users", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/user/index.js", "groupTitle": "Users" }, { "type": "get", "url": "/api/users/{id}/sms/interactions", "title": "GetSmsInteractions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/users/{id}/sms/interactions -v -u {name}:{password}", "type": "json" } ], "name": "GetSmsInteractions", "group": "Users", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/user/index.js", "groupTitle": "Users" }, { "type": "get", "url": "/api/users/{id}/teams", "title": "GetTeams", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/users/{id}/teams -v -u {name}:{password}", "type": "json" } ], "name": "GetTeams", "group": "Users", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/user/index.js", "groupTitle": "Users" }, { "type": "get", "url": "/api/users", "title": "Gets a list of Users", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/users -v -u {name}:{password}", "type": "json" } ], "name": "GetUsers", "group": "Users", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/users?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/users?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/users?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/users?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/users?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/user/index.js", "groupTitle": "Users" }, { "type": "get", "url": "/api/users/{id}/queues_rt", "title": "GetVoiceQueuesRt", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/users/{id}/queues_rt -v -u {name}:{password}", "type": "json" } ], "name": "GetVoiceQueuesRt", "group": "Users", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/user/index.js", "groupTitle": "Users" }, { "type": "post", "url": "/api/users/{id}/login", "title": "Login", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/users/{id}/login -v -u {name}:{password}", "type": "json" } ], "name": "Login", "group": "Users", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/user/index.js", "groupTitle": "Users" }, { "type": "post", "url": "/api/users/{id}/logout", "title": "Logout", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/users/{id}/logout -v -u {name}:{password}", "type": "json" } ], "name": "Logout", "group": "Users", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/user/index.js", "groupTitle": "Users" }, { "type": "post", "url": "/api/users/{id}/pause", "title": "Pause", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/users/{id}/pause -v -u {name}:{password}", "type": "json" } ], "name": "Pause", "group": "Users", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/user/index.js", "groupTitle": "Users" }, { "type": "delete", "url": "/api/users/{id}/queues", "title": "Remove queues to an agent", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/users/{id}/queues?ids=1&ids=2 -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "RemoveQueues", "group": "Users", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/user/index.js", "groupTitle": "Users" }, { "type": "delete", "url": "/api/users/{id}/teams", "title": "Removes teams from an agent", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/users/{id}/teams?ids=1&ids=2 -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "RemoveTeams", "group": "Users", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/user/index.js", "groupTitle": "Users" }, { "type": "get", "url": "/api/users/{id}", "title": "Gets a single User", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/users/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowUsers", "group": "Users", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/user/index.js", "groupTitle": "Users" }, { "type": "post", "url": "/api/users/{id}/unpause", "title": "Unpause", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/users/{id}/unpause -v -u {name}:{password}", "type": "json" } ], "name": "Unpause", "group": "Users", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/user/index.js", "groupTitle": "Users" }, { "type": "post", "url": "/api/users/{id}/avatar", "title": "Add avatar", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/users/{id}/avatar -H 'Content-Type: multipart/form-data' -F 'file=@{filename}' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addAvatar", "group": "Users", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/user/index.js", "groupTitle": "Users" }, { "type": "get", "url": "/api/users/{id}/avatar", "title": "Get avatar", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/users/{id}/avatar -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getAvatar", "group": "Users", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/user/index.js", "groupTitle": "Users" }, { "type": "put", "url": "/api/users/{id}", "title": "Update an existing User", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/users/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateUsers", "group": "Users", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/user/index.js", "groupTitle": "Users" }, { "type": "post", "url": "/api/variables", "title": "Creates a new Variable", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/variables -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateVariables", "group": "Variables", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/variable/index.js", "groupTitle": "Variables" }, { "type": "delete", "url": "/api/variables/{id}", "title": "Deletes a Variable", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/variables/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteVariables", "group": "Variables", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/variable/index.js", "groupTitle": "Variables" }, { "type": "get", "url": "/api/variables", "title": "Gets a list of Variables", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/variables -v -u {name}:{password}", "type": "json" } ], "name": "GetVariables", "group": "Variables", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/variables?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/variables?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/variables?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/variables?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/variables?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/variable/index.js", "groupTitle": "Variables" }, { "type": "get", "url": "/api/variables/{id}", "title": "Gets a single Variable", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/variables/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowVariables", "group": "Variables", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/variable/index.js", "groupTitle": "Variables" }, { "type": "put", "url": "/api/variables/{id}", "title": "Update an existing Variable", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/variables/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateVariables", "group": "Variables", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/variable/index.js", "groupTitle": "Variables" }, { "type": "get", "url": "/api/version/fetch", "title": "Fetch git version", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/version/fetch -v -u {name}:{password}", "type": "json" } ], "name": "FetchVersion", "group": "Version", "description": "

Motion run the following command: git fetch origin master

", "version": "0.0.0", "filename": "server/api/version/index.js", "groupTitle": "Version" }, { "type": "get", "url": "/api/version", "title": "Gets version", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/version -v -u {name}:{password}", "type": "json" } ], "name": "GetVersion", "group": "Version", "description": "

Motion returns the current and latest motion version.

", "version": "0.0.0", "filename": "server/api/version/index.js", "groupTitle": "Version" }, { "type": "get", "url": "/api/version/migrations", "title": "Launch database migrations", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/version/migrations -v -u {name}:{password}", "type": "json" } ], "name": "MigrateVersion", "group": "Version", "description": "

Motion launch the database migrations, according to the application version

", "version": "0.0.0", "filename": "server/api/version/index.js", "groupTitle": "Version" }, { "type": "get", "url": "/api/version/pull", "title": "Pull git version", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/version/pull -v -u {name}:{password}", "type": "json" } ], "name": "PullVersion", "group": "Version", "description": "

Motion run the following command: git pull

", "version": "0.0.0", "filename": "server/api/version/index.js", "groupTitle": "Version" }, { "type": "get", "url": "/api/version/reset", "title": "Reset git version", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/version/reset -v -u {name}:{password}", "type": "json" } ], "name": "ResetVersion", "group": "Version", "description": "

Motion run the following command: git reset --hard FETCH_HEAD

", "version": "0.0.0", "filename": "server/api/version/index.js", "groupTitle": "Version" }, { "type": "get", "url": "/api/version/restart", "title": "Restart motion2 after update", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/version/restart -v -u {name}:{password}", "type": "json" } ], "name": "RestartVersion", "group": "Version", "description": "

Motion run the following command: pm2 restart motion

", "version": "0.0.0", "filename": "server/api/version/index.js", "groupTitle": "Version" }, { "type": "get", "url": "/api/voice/agents/reports/describe", "title": "Gets table info about Agent Reports", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/agents/reports/describe -v -u {name}:{password}", "type": "json" } ], "name": "DescribeAgent_Reports", "group": "Voice_Agent_Reports", "description": "

Motion will return a HTTP status code 200 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceAgentReport/index.js", "groupTitle": "Voice_Agent_Reports" }, { "type": "get", "url": "/api/voice/agents/reports", "title": "Gets a list of Agent Reports", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/agents/reports -v -u {name}:{password}", "type": "json" } ], "name": "GetAgent_Reports", "group": "Voice_Agent_Reports", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/voice/agents/reports?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/voice/agents/reports?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/voice/agents/reports?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/voice/agents/reports?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/voice/agents/reports?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/voiceAgentReport/index.js", "groupTitle": "Voice_Agent_Reports" }, { "type": "get", "url": "/api/voice/agents/reports/{id}", "title": "Gets a single Agent Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/agents/reports/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowAgent_Reports", "group": "Voice_Agent_Reports", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceAgentReport/index.js", "groupTitle": "Voice_Agent_Reports" }, { "type": "get", "url": "/api/voice/calls/reports/describe", "title": "Gets table info about Call Reports", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/calls/reports/describe -v -u {name}:{password}", "type": "json" } ], "name": "DescribeCall_Reports", "group": "Voice_Call_Reports", "description": "

Motion will return a HTTP status code 200 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceCallReport/index.js", "groupTitle": "Voice_Call_Reports" }, { "type": "get", "url": "/api/voice/calls/reports", "title": "Gets a list of Call Reports", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/calls/reports -v -u {name}:{password}", "type": "json" } ], "name": "GetCall_Reports", "group": "Voice_Call_Reports", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/voice/calls/reports?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/voice/calls/reports?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/voice/calls/reports?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/voice/calls/reports?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/voice/calls/reports?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/voiceCallReport/index.js", "groupTitle": "Voice_Call_Reports" }, { "type": "get", "url": "/api/voice/calls/reports/{id}", "title": "Gets a single Call Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/calls/reports/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowCall_Reports", "group": "Voice_Call_Reports", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceCallReport/index.js", "groupTitle": "Voice_Call_Reports" }, { "type": "put", "url": "/api/voice/calls/reports/{id}", "title": "Update a single cdr", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/calls/reports/{id} -d '{\"userDispositio\": \"OK\"}' -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "update", "group": "Voice_Call_Reports", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceCallReport/index.js", "groupTitle": "Voice_Call_Reports" }, { "type": "post", "url": "/api/voice/chanspy", "title": "Creates a new ChanSpy", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/chanspy -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateChanSpy", "group": "Voice_ChanSpy", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": true, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "prefix", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "options", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "auth", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "password", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "record", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "recordingFormat", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceChanSpy/index.js", "groupTitle": "Voice_ChanSpy" }, { "type": "delete", "url": "/api/voice/chanspy/{id}", "title": "Deletes a ChanSpy", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/chanspy/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteChanSpy", "group": "Voice_ChanSpy", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceChanSpy/index.js", "groupTitle": "Voice_ChanSpy" }, { "type": "get", "url": "/api/voice/chanspy", "title": "Gets a list of ChanSpy", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/chanspy -v -u {name}:{password}", "type": "json" } ], "name": "GetChanSpy", "group": "Voice_ChanSpy", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/voice/chanspy?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/voice/chanspy?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/voice/chanspy?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/voice/chanspy?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/voice/chanspy?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/voiceChanSpy/index.js", "groupTitle": "Voice_ChanSpy" }, { "type": "get", "url": "/api/voice/chanspy/{id}", "title": "Gets a single ChanSpy", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/chanspy/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowChanSpy", "group": "Voice_ChanSpy", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceChanSpy/index.js", "groupTitle": "Voice_ChanSpy" }, { "type": "put", "url": "/api/voice/chanspy/{id}", "title": "Update an existing ChanSpy", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/chanspy/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateChanSpy", "group": "Voice_ChanSpy", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceChanSpy/index.js", "groupTitle": "Voice_ChanSpy" }, { "type": "post", "url": "/api/voice/contexts", "title": "Create a new context", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/contexts -v -u {name}:{password} -X POST", "type": "json" } ], "name": "Create", "group": "Voice_Contexts", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": true, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "defaultEntry", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceContext/index.js", "groupTitle": "Voice_Contexts" }, { "type": "delete", "url": "/api/voice/contexts/{id}", "title": "Deletes a context", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/contexts/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "Delete", "group": "Voice_Contexts", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceContext/index.js", "groupTitle": "Voice_Contexts" }, { "type": "get", "url": "/api/voice/contexts", "title": "Gets a list of Contexts", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/contexts -v -u {name}:{password}", "type": "json" } ], "name": "GetContexts", "group": "Voice_Contexts", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/voice/contexts?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/voice/contexts?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/voice/contexts?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/voice/contexts?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/voice/contexts?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/voiceContext/index.js", "groupTitle": "Voice_Contexts" }, { "type": "get", "url": "/api/voice/contexts/{id}", "title": "Gets a single Context", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/contexts/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowContexts", "group": "Voice_Contexts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceContext/index.js", "groupTitle": "Voice_Contexts" }, { "type": "put", "url": "/api/voice/contexts/{id}", "title": "Update an existing context", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/contexts/{id} -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "Update", "group": "Voice_Contexts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceContext/index.js", "groupTitle": "Voice_Contexts" }, { "type": "get", "url": "/api/voice/dials/reports/describe", "title": "Gets table info about Dial Reports", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/dials/reports/describe -v -u {name}:{password}", "type": "json" } ], "name": "DescribeDial_Reports", "group": "Voice_Dial_Reports", "description": "

Motion will return a HTTP status code 200 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceDialReport/index.js", "groupTitle": "Voice_Dial_Reports" }, { "type": "get", "url": "/api/voice/dials/reports", "title": "Gets a list of Dial Reports", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/dials/reports -v -u {name}:{password}", "type": "json" } ], "name": "GetDial_Reports", "group": "Voice_Dial_Reports", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/voice/dials/reports?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/voice/dials/reports?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/voice/dials/reports?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/voice/dials/reports?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/voice/dials/reports?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/voiceDialReport/index.js", "groupTitle": "Voice_Dial_Reports" }, { "type": "get", "url": "/api/voice/dials/reports/{id}", "title": "Gets a single Dial Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/dials/reports/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowDial_Reports", "group": "Voice_Dial_Reports", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceDialReport/index.js", "groupTitle": "Voice_Dial_Reports" }, { "type": "post", "url": "/api/voice/dispositions", "title": "Creates a new Disposition", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/dispositions -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateDispositions", "group": "Voice_Dispositions", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "name", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceDisposition/index.js", "groupTitle": "Voice_Dispositions" }, { "type": "delete", "url": "/api/voice/dispositions/{id}", "title": "Deletes a Disposition", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/dispositions/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteDispositions", "group": "Voice_Dispositions", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceDisposition/index.js", "groupTitle": "Voice_Dispositions" }, { "type": "get", "url": "/api/voice/dispositions", "title": "Gets a list of Dispositions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/dispositions -v -u {name}:{password}", "type": "json" } ], "name": "GetDispositions", "group": "Voice_Dispositions", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/voice/dispositions?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/voice/dispositions?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/voice/dispositions?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/voice/dispositions?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/voice/dispositions?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/voiceDisposition/index.js", "groupTitle": "Voice_Dispositions" }, { "type": "get", "url": "/api/voice/dispositions/{id}", "title": "Gets a single Disposition", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/dispositions/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowDispositions", "group": "Voice_Dispositions", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceDisposition/index.js", "groupTitle": "Voice_Dispositions" }, { "type": "put", "url": "/api/voice/dispositions/{id}", "title": "Update an existing Disposition", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/dispositions/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateDispositions", "group": "Voice_Dispositions", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceDisposition/index.js", "groupTitle": "Voice_Dispositions" }, { "type": "delete", "url": "/api/voice/extensions/{id}", "title": "Deletes a Extension", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/extensions/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteExtensions", "group": "Voice_Extensions", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceExtension/index.js", "groupTitle": "Voice_Extensions" }, { "type": "get", "url": "/api/voice/extensions", "title": "Gets a list of Extensions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/extensions -v -u {name}:{password}", "type": "json" } ], "name": "GetExtensions", "group": "Voice_Extensions", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/voice/extensions?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/voice/extensions?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/voice/extensions?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/voice/extensions?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/voice/extensions?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/voiceExtension/index.js", "groupTitle": "Voice_Extensions" }, { "type": "get", "url": "/api/voice/extensions/{id}", "title": "Gets a single Extension", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/extensions/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowExtensions", "group": "Voice_Extensions", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceExtension/index.js", "groupTitle": "Voice_Extensions" }, { "type": "post", "url": "/api/voice/extensions", "title": "Create new applications", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/extensions/{id}/applications -d '[{\"app\": \"Set\", \"appdata\": \"CALLERDNID=${CALLER(dnid)}\"}]' -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addApplications", "group": "Voice_Extensions", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceExtension/index.js", "groupTitle": "Voice_Extensions" }, { "type": "post", "url": "/api/voice/extensions", "title": "Create an extension", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/extensions -d '{\"exten\": \"12345\", \"context\": \"from-custom\"}' -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "create", "group": "Voice_Extensions", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceExtension/index.js", "groupTitle": "Voice_Extensions" }, { "type": "put", "url": "/api/voice/extensions/{id}", "title": "Update an extension", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/extensions/{id} -d '{\"exten\": \"12345\", \"context\": \"from-custom\"}' -H 'Content-Type: application/json' -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "update", "group": "Voice_Extensions", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceExtension/index.js", "groupTitle": "Voice_Extensions" }, { "type": "post", "url": "/api/voice/mohs", "title": "Create a new a new MOH", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/mohs -d '{\"name\": \"xmas_musics\"}' -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "AddMoh", "group": "Voice_MOHs", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceMusicOnHold/index.js", "groupTitle": "Voice_MOHs" }, { "type": "post", "url": "/api/voice/mohs/{id}/sounds", "title": "Add sound to MOH", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/mohs/{id}/sounds -d '{\"id\": 1}' -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "AddSound", "group": "Voice_MOHs", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceMusicOnHold/index.js", "groupTitle": "Voice_MOHs" }, { "type": "delete", "url": "/api/voice/mohs/{id}", "title": "Deletes an MOH", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/mohs/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DestroyMoh", "group": "Voice_MOHs", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceMusicOnHold/index.js", "groupTitle": "Voice_MOHs" }, { "type": "get", "url": "/api/voice/mohs", "title": "Gets a list of Music On Holds", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/mohs -v -u {name}:{password}", "type": "json" } ], "name": "GetMusic_On_Holds", "group": "Voice_MOHs", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/voice/mohs?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/voice/mohs?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/voice/mohs?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/voice/mohs?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/voice/mohs?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/voiceMusicOnHold/index.js", "groupTitle": "Voice_MOHs" }, { "type": "get", "url": "/api/voice/mohs/{id}/sounds", "title": "Gets sounds from MOH", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/mohs/{id}/sounds -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "GetSounds", "group": "Voice_MOHs", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceMusicOnHold/index.js", "groupTitle": "Voice_MOHs" }, { "type": "delete", "url": "/api/voice/mohs/{id}/sounds/{id2}", "title": "Remove sound from MOH", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/mohs/{id}/sounds/{id2} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "RemoveSound", "group": "Voice_MOHs", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceMusicOnHold/index.js", "groupTitle": "Voice_MOHs" }, { "type": "get", "url": "/api/voice/mohs/{id}", "title": "Gets a single Music On Hold", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/mohs/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowMusic_On_Holds", "group": "Voice_MOHs", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceMusicOnHold/index.js", "groupTitle": "Voice_MOHs" }, { "type": "put", "url": "/api/voice/mohs/{id}", "title": "Update an existing Music On Hold", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/mohs/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateMusic_On_Holds", "group": "Voice_MOHs", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceMusicOnHold/index.js", "groupTitle": "Voice_MOHs" }, { "type": "post", "url": "/api/voice/mails", "title": "Creates a new Mail", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/mails -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateMails", "group": "Voice_Mails", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": true, "field": "customer_id", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "context", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "mailbox", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "password", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "fullname", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "email", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "pager", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "tz", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": false, "field": "attach", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": false, "field": "saycid", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "dialout", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "callback", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": false, "field": "review", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": false, "field": "operator", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": false, "field": "envelope", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": false, "field": "sayduration", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "saydurationm", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": false, "field": "sendvoicemail", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": false, "field": "delete", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": false, "field": "nextaftercmd", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": false, "field": "forcename", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": false, "field": "forcegreetings", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": false, "field": "hidefromdir", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "stamp", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "emailsubject", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "emailbody", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "name", "description": "" }, { "group": "Body", "type": "Integer", "optional": false, "field": "maxsecs", "description": "" }, { "group": "Body", "type": "Integer", "optional": false, "field": "maxmsg", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceMail/index.js", "groupTitle": "Voice_Mails" }, { "type": "delete", "url": "/api/voice/mails/{id}", "title": "Deletes a Mail", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/mails/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteMails", "group": "Voice_Mails", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceMail/index.js", "groupTitle": "Voice_Mails" }, { "type": "get", "url": "/api/voice/mails", "title": "Gets a list of Mails", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/mails -v -u {name}:{password}", "type": "json" } ], "name": "GetMails", "group": "Voice_Mails", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/voice/mails?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/voice/mails?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/voice/mails?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/voice/mails?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/voice/mails?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/voiceMail/index.js", "groupTitle": "Voice_Mails" }, { "type": "get", "url": "/api/voice/mails/{id}", "title": "Gets a single Mail", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/mails/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowMails", "group": "Voice_Mails", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceMail/index.js", "groupTitle": "Voice_Mails" }, { "type": "get", "url": "/api/voice/mails/{id}/messages", "title": "Gets voice mail messages", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/mails/{id}/messages -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getMessages", "group": "Voice_Mails", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceMail/index.js", "groupTitle": "Voice_Mails" }, { "type": "put", "url": "/api/voice/mails/{id}", "title": "Update an existing Mail", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/mails/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateMails", "group": "Voice_Mails", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceMail/index.js", "groupTitle": "Voice_Mails" }, { "type": "post", "url": "/api/voice/mails/messages", "title": "Creates a new Message", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/mails/messages -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateMessages", "group": "Voice_Messages", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "Virtual", "optional": true, "field": "name", "description": "" }, { "group": "Body", "type": "Integer", "optional": false, "field": "msgnum", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "dir", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "context", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "macrocontext", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "callerid", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "origtime", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "duration", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "mailboxuser", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "mailboxcontext", "description": "" }, { "group": "Body", "type": "Blob", "optional": true, "field": "recording", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "flag", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "msg_id", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "stamp", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceMailMessage/index.js", "groupTitle": "Voice_Messages" }, { "type": "delete", "url": "/api/voice/mails/messages/{id}", "title": "Deletes a Message", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/mails/messages/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteMessages", "group": "Voice_Messages", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceMailMessage/index.js", "groupTitle": "Voice_Messages" }, { "type": "get", "url": "/api/voice/mails/messages", "title": "Gets a list of Messages", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/mails/messages -v -u {name}:{password}", "type": "json" } ], "name": "GetMessages", "group": "Voice_Messages", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/voice/mails/messages?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/voice/mails/messages?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/voice/mails/messages?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/voice/mails/messages?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/voice/mails/messages?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/voiceMailMessage/index.js", "groupTitle": "Voice_Messages" }, { "type": "get", "url": "/api/voice/mails/messages/{id}", "title": "Gets a single Message", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/mails/messages/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowMessages", "group": "Voice_Messages", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceMailMessage/index.js", "groupTitle": "Voice_Messages" }, { "type": "get", "url": "voice/mails/messages/{id}/download", "title": "Download Voice Message", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}voice/mails/messages/{id}/download -v -u {name}:{password} -X GET", "type": "json" } ], "name": "download", "group": "Voice_Messages", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceMailMessage/index.js", "groupTitle": "Voice_Messages" }, { "type": "put", "url": "/api/voice/mails/messages/{id}", "title": "Update an existing Message", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/mails/messages/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateMessages", "group": "Voice_Messages", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceMailMessage/index.js", "groupTitle": "Voice_Messages" }, { "type": "get", "url": "/api/voice/queues/reports/describe", "title": "Gets table info about Queue Reports", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/queues/reports/describe -v -u {name}:{password}", "type": "json" } ], "name": "DescribeQueue_Reports", "group": "Voice_Queue_Reports", "description": "

Motion will return a HTTP status code 200 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceQueueReport/index.js", "groupTitle": "Voice_Queue_Reports" }, { "type": "get", "url": "/api/voice/queues/reports", "title": "Gets a list of Queue Reports", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/queues/reports -v -u {name}:{password}", "type": "json" } ], "name": "GetQueue_Reports", "group": "Voice_Queue_Reports", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/voice/queues/reports?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/voice/queues/reports?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/voice/queues/reports?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/voice/queues/reports?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/voice/queues/reports?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/voiceQueueReport/index.js", "groupTitle": "Voice_Queue_Reports" }, { "type": "get", "url": "/api/voice/queues/reports/{id}", "title": "Gets a single Queue Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/queues/reports/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowQueue_Reports", "group": "Voice_Queue_Reports", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceQueueReport/index.js", "groupTitle": "Voice_Queue_Reports" }, { "type": "post", "url": "/api/voice/queues/{id}/users", "title": "Add agents to queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/queues/{id}/users -d '{\"ids\": [1,2], \"penalty\": 2}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "AddAgents", "group": "Voice_Queues", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceQueue/index.js", "groupTitle": "Voice_Queues" }, { "type": "post", "url": "/api/voice/queues/{id}/blacklists", "title": "Add blacklists to a queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/queues/{id}/blacklists -d '{\"ids\": [1,2]}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "AddBlackLists", "group": "Voice_Queues", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceQueue/index.js", "groupTitle": "Voice_Queues" }, { "type": "post", "url": "/api/voice/queues/{id}/lists", "title": "Add lists to a queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/queues/{id}/lists -d '{\"ids\": [1,2]}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "AddLists", "group": "Voice_Queues", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceQueue/index.js", "groupTitle": "Voice_Queues" }, { "type": "post", "url": "/api/voice/queues/{id}/teams", "title": "Add teams to queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/queues/{id}/teams -d '{\"ids\": [1,2]}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "AddTeams", "group": "Voice_Queues", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceQueue/index.js", "groupTitle": "Voice_Queues" }, { "type": "post", "url": "/api/voice/queues", "title": "Creates a new Queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/queues -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateQueues", "group": "Voice_Queues", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "name", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"inbound\"", "\"outbound\"" ], "optional": false, "field": "type", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "musiconhold", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "announce", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"ringall\"", "\"leastrecent\"", "\"fewestcalls\"", "\"random\"", "\"rrmemory\"", "\"linear\"", "\"wrandom\"", "\"rrordered\"" ], "optional": false, "field": "strategy", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "servicelevel", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "context", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "penaltymemberslimit", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "timeout", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "retry", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "timeoutpriority", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "weight", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "wrapuptime", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "autofill", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"", "\"all\"" ], "optional": true, "field": "autopause", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "autopausedelay", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "autopausebusy", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "autopauseunavail", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "maxlen", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "setinterfacevar", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "setqueueentryvar", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "setqueuevar", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "eventmemberstatus", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "membermacro", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "membergosub", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "announce_frequency", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "min_announce_frequency", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "periodic_announce_frequency", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "random_periodic_announce", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "relative_periodic_announce", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"", "\"once\"" ], "optional": true, "field": "announce_holdtime", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "announce_position", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "announce_to_first_user", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "announce_position_limit", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"0\"", "\"5\"", "\"10\"", "\"15\"", "\"20\"", "\"30\"" ], "optional": true, "field": "announce_round_seconds", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "monitor_format", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "monitor_type", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "queue_youarenext", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "queue_thereare", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "queue_callswaiting", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "queue_holdtime", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "queue_minute", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "queue_minutes", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "queue_seconds", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "queue_thankyou", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "queue_reporthold", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "queue_quantity1", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "queue_quantity2", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "queue_periodic_announce", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "queue_less_than", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "periodic_announce", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "joinempty", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "leavewhenempty", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "reportholdtime", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "ringinuse", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "memberdelay", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"yes\"", "\"no\"" ], "optional": true, "field": "timeoutrestart", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "defaultrule", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "acw", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "acwTimeout", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "dialActive", "description": "

Active/Disactive Campaign

" }, { "group": "Body", "type": "String", "allowedValues": [ "\"preview\"", "\"progressive\"", "\"power\"", "\"predictive\"", "\"booked\"" ], "optional": true, "field": "dialMethod", "description": "

Dial Method.

" }, { "group": "Body", "type": "Integer", "optional": true, "field": "dialLimitChannel", "description": "

Max 9999 channels, 0 means unlimited.

" }, { "group": "Body", "type": "Integer", "optional": true, "field": "dialLimitQueue", "description": "

Max 9999 member in queue(min:1, max:9999), 0 means unlimited.

" }, { "group": "Body", "type": "Float", "optional": true, "field": "dialPowerLevel", "description": "

Power Level: Calls for agents (min:1, max:10).

" }, { "group": "Body", "type": "String", "allowedValues": [ "\"agentBusyFactor\"", "\"dropRate\"" ], "optional": true, "field": "dialPredictiveOptimization", "description": "

Only for predictive method.

" }, { "group": "Body", "type": "Float", "optional": true, "field": "dialPredictiveOptimizationPercentage", "description": "

Predictive Optimization Percentage (min: 1, max: 95)

" }, { "group": "Body", "type": "Integer", "optional": true, "field": "dialPredictiveInterval", "description": "

Interval Predictive Minutes (min:5 max:30)

" }, { "group": "Body", "type": "String", "optional": true, "field": "dialOriginateCallerIdName", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "dialOriginateCallerIdNumber", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "dialOriginateTimeout", "description": "

Originate Timeout Seconds (min:1, max:999)

" }, { "group": "Body", "type": "String", "optional": true, "field": "dialQueueOptions", "description": "

https://wiki.asterisk.org/wiki/display/AST/Asterisk+13+Application_Queue

" }, { "group": "Body", "type": "Integer", "optional": true, "field": "dialQueueTimeout", "description": "

Queue Timeout Seconds (min:1, max:999)

" }, { "group": "Body", "type": "String", "optional": true, "field": "dialQueueProject", "description": "

AGI queue option (use: agi://127.0.0.1/square,<project_name>)

" }, { "group": "Body", "type": "Integer", "optional": true, "field": "dialCongestionMaxRetry", "description": "

#Congestion Retry (min:1, max:999)

" }, { "group": "Body", "type": "Integer", "optional": true, "field": "dialCongestionRetryFrequency", "description": "

Congestion Retry Frequency Minutes (min:1, max:99999)

" }, { "group": "Body", "type": "Integer", "optional": true, "field": "dialBusyMaxRetry", "description": "

#Busy Retry (min:1, max:999)

" }, { "group": "Body", "type": "Integer", "optional": true, "field": "dialBusyRetryFrequency", "description": "

Busy Retry Frequency Minutes (min:1, max:99999)

" }, { "group": "Body", "type": "Integer", "optional": true, "field": "dialNoAnswerMaxRetry", "description": "

#NoAnswer Retry (min:1, max:999)

" }, { "group": "Body", "type": "Integer", "optional": true, "field": "dialNoAnswerRetryFrequency", "description": "

NoAnswer Retry Frequency Minutes (min:1, max:99999)

" }, { "group": "Body", "type": "Integer", "optional": true, "field": "dialGlobalMaxRetry", "description": "

#Global Max Retry (min:1, max:999)

" }, { "group": "Body", "type": "String", "optional": true, "field": "dialTimezone", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "dialGlobalInterval", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "dialPrefix", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"always\"", "\"never\"", "\"onlyIfOpen\"" ], "optional": true, "field": "dialCheckDuplicateType", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "dialAMDActive", "description": "

Active/Disactive AMD

" }, { "group": "Body", "type": "Integer", "optional": true, "field": "dialAMDInitialSilence", "description": "

#AMD Initial Silence

" }, { "group": "Body", "type": "Integer", "optional": true, "field": "dialAMDGreeting", "description": "

#AMD Greeting

" }, { "group": "Body", "type": "Integer", "optional": true, "field": "dialAMDAfterGreetingSilence", "description": "

#AMD After Greeting Silence

" }, { "group": "Body", "type": "Integer", "optional": true, "field": "dialAMDTotalAnalysisTime", "description": "

#AMD Total Analysis Time

" }, { "group": "Body", "type": "Integer", "optional": true, "field": "dialAMDMinWordLength", "description": "

#AMD Min Word Length

" }, { "group": "Body", "type": "Integer", "optional": true, "field": "dialAMDBetweenWordsSilence", "description": "

#AMD Between Words Silence

" }, { "group": "Body", "type": "Integer", "optional": true, "field": "dialAMDMaximumNumberOfWords", "description": "

#AMD Maximum Number Of Words

" }, { "group": "Body", "type": "Integer", "optional": true, "field": "dialAMDSilenceThreshold", "description": "

#AMD Silence Threshold (min:0, max:32767)

" }, { "group": "Body", "type": "Integer", "optional": true, "field": "dialAMDMaximumWordLength", "description": "

#AMD Maximum Word Length

" }, { "group": "Body", "type": "Integer", "optional": true, "field": "dialRecallMeTimeout", "description": "

#RecallMe Timeout (min:1)

" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "dialRecallInQueue", "description": "

Active/Disactive Recall In Queue

" }, { "group": "Body", "type": "String", "allowedValues": [ "\"DESC\"", "\"ASC\"" ], "optional": true, "field": "dialOrderByScheduledAt", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "dialQueueProject2", "description": "

AGI queue option (use: agi://127.0.0.1/square,<project_name>)

" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "dialAgiAfterHangupClient", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "dialAgiAfterHangupAgent", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceQueue/index.js", "groupTitle": "Voice_Queues" }, { "type": "delete", "url": "/api/voice/queues/{id}", "title": "Deletes a Queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/queues/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteQueues", "group": "Voice_Queues", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceQueue/index.js", "groupTitle": "Voice_Queues" }, { "type": "get", "url": "/api/voice/queues/{id}/users", "title": "Gets queue agents", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/queues/{id}/users -v -u {name}:{password} -X GET", "type": "json" } ], "name": "GetAgents", "group": "Voice_Queues", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceQueue/index.js", "groupTitle": "Voice_Queues" }, { "type": "get", "url": "/api/voice/queues/{id}/blacklists", "title": "Get queue blacklists", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/queues/{id}/blacklists -v -u {name}:{password} -X GET", "type": "json" } ], "name": "GetBlackLists", "group": "Voice_Queues", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceQueue/index.js", "groupTitle": "Voice_Queues" }, { "type": "get", "url": "/api/voice/queues/{id}/finals", "title": "Gets queue hopper finals", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/queues/{id}/hopper_finals -v -u {name}:{password} -X GET", "type": "json" } ], "name": "GetHopperFinals", "group": "Voice_Queues", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceQueue/index.js", "groupTitle": "Voice_Queues" }, { "type": "get", "url": "/api/voice/queues/{id}/hopper_histories", "title": "Gets queue hopper histories", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/queues/{id}/hopper_histories -v -u {name}:{password} -X GET", "type": "json" } ], "name": "GetHopperHistories", "group": "Voice_Queues", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceQueue/index.js", "groupTitle": "Voice_Queues" }, { "type": "get", "url": "/api/voice/queues/{id}/hoppers", "title": "Gets queue hoppers", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/queues/{id}/hoppers -v -u {name}:{password} -X GET", "type": "json" } ], "name": "GetHoppers", "group": "Voice_Queues", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceQueue/index.js", "groupTitle": "Voice_Queues" }, { "type": "get", "url": "/api/voice/queues/{id}/lists", "title": "Get queue lists", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/queues/{id}/lists -v -u {name}:{password} -X GET", "type": "json" } ], "name": "GetLists", "group": "Voice_Queues", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceQueue/index.js", "groupTitle": "Voice_Queues" }, { "type": "get", "url": "/api/voice/queues/{id}/members", "title": "Gets queue members", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/queues/{id}/members -v -u {name}:{password} -X GET", "type": "json" } ], "name": "GetMembers", "group": "Voice_Queues", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceQueue/index.js", "groupTitle": "Voice_Queues" }, { "type": "get", "url": "/api/voice/queues", "title": "Gets a list of Queues", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/queues -v -u {name}:{password}", "type": "json" } ], "name": "GetQueues", "group": "Voice_Queues", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/voice/queues?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/voice/queues?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/voice/queues?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/voice/queues?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/voice/queues?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/voiceQueue/index.js", "groupTitle": "Voice_Queues" }, { "type": "get", "url": "/api/voice/queues/{id}/teams", "title": "Gets queue team", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/queues/{id}/teams -v -u {name}:{password} -X GET", "type": "json" } ], "name": "GetTeams", "group": "Voice_Queues", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceQueue/index.js", "groupTitle": "Voice_Queues" }, { "type": "delete", "url": "/api/voice/queues/{id}/users", "title": "Removes agents from a queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/queues/{id}/users?ids=1&ids=2 -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "RemoveAgents", "group": "Voice_Queues", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceQueue/index.js", "groupTitle": "Voice_Queues" }, { "type": "delete", "url": "/api/voice/queues/{id}/blacklists", "title": "Remove blacklists from a queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/queues/{id}/blacklists?ids=1&ids=2 -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "RemoveBlackLists", "group": "Voice_Queues", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceQueue/index.js", "groupTitle": "Voice_Queues" }, { "type": "delete", "url": "/api/voice/queues/{id}/lists", "title": "Remove lists from a queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/queues/{id}/lists?ids=1&ids=2 -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "RemoveLists", "group": "Voice_Queues", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceQueue/index.js", "groupTitle": "Voice_Queues" }, { "type": "get", "url": "/api/voice/queues/{id}", "title": "Gets a single Queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/queues/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowQueues", "group": "Voice_Queues", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceQueue/index.js", "groupTitle": "Voice_Queues" }, { "type": "get", "url": "/api/voice/queues/{id}/blacks", "title": "Gets queue hopper blacks", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/queues/{id}/hopper_black -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getHopperBlacks", "group": "Voice_Queues", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceQueue/index.js", "groupTitle": "Voice_Queues" }, { "type": "put", "url": "/api/voice/queues/{id}", "title": "Update an existing Queue", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/queues/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateQueues", "group": "Voice_Queues", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceQueue/index.js", "groupTitle": "Voice_Queues" }, { "type": "post", "url": "/api/voice/recordings", "title": "Creates a new Recording", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/recordings -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateRecordings", "group": "Voice_Recordings", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "Virtual", "optional": true, "field": "format", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "uniqueid", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "channel", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "membername", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "calleridnum", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "calleridname", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "connectedlinenum", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "connectedlinename", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "accountcode", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "context", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "exten", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "value", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "type", "description": "" }, { "group": "Body", "type": "Integer", "optional": true, "field": "rating", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "queue", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "userDisposition", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "createdAt", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "updatedAt", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceRecording/index.js", "groupTitle": "Voice_Recordings" }, { "type": "delete", "url": "/api/voice/recordings/{id}", "title": "Deletes a Recording", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/recordings/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteRecordings", "group": "Voice_Recordings", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceRecording/index.js", "groupTitle": "Voice_Recordings" }, { "type": "get", "url": "/api/voice/recordings/describe", "title": "Gets table info about Recordings", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/recordings/describe -v -u {name}:{password}", "type": "json" } ], "name": "DescribeRecordings", "group": "Voice_Recordings", "description": "

Motion will return a HTTP status code 200 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceRecording/index.js", "groupTitle": "Voice_Recordings" }, { "type": "get", "url": "/api/voice/recordings", "title": "Gets a list of Recordings", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/recordings -v -u {name}:{password}", "type": "json" } ], "name": "GetRecordings", "group": "Voice_Recordings", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/voice/recordings?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/voice/recordings?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/voice/recordings?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/voice/recordings?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/voice/recordings?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/voiceRecording/index.js", "groupTitle": "Voice_Recordings" }, { "type": "get", "url": "/api/voice/recordings/{id}", "title": "Gets a single Recording", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/recordings/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowRecordings", "group": "Voice_Recordings", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceRecording/index.js", "groupTitle": "Voice_Recordings" }, { "type": "get", "url": "/api/voice/recordings/{id}/download", "title": "Download Recording", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/recordings/{id}/download -v -u {name}:{password} -X GET", "type": "json" } ], "name": "download", "group": "Voice_Recordings", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceRecording/index.js", "groupTitle": "Voice_Recordings" }, { "type": "put", "url": "/api/voice/recordings/{id}", "title": "Update an existing Recording", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/recordings/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateRecordings", "group": "Voice_Recordings", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceRecording/index.js", "groupTitle": "Voice_Recordings" }, { "type": "post", "url": "/api/voice/transfers/reports", "title": "Creates a new Transfer Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/transfers/reports -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateTransfer_Reports", "group": "Voice_Transfer_Reports", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "allowedValues": [ "\"blind\"", "\"attended\"" ], "optional": true, "field": "type", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "result", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "transfererchannel", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "transferercalleridnum", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "transferercalleridname", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "transfererconnectedlinenum", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "transfererconnectedlinename", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "transfereraccountcode", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "transferercontext", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "transfererexten", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "transfererlinkedid", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "transfereechannel", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "transfereecalleridnum", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "transfereecalleridname", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "transfereeconnectedlinenum", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "transfereeconnectedlinename", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "transfereeaccountcode", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "transfereecontext", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "transfereeexten", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "transfereelinkedid", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"Yes\"", "\"No\"" ], "optional": true, "field": "isexternal", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "context", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "extension", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceTransferReport/index.js", "groupTitle": "Voice_Transfer_Reports" }, { "type": "delete", "url": "/api/voice/transfers/reports/{id}", "title": "Deletes a Transfer Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/transfers/reports/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteTransfer_Reports", "group": "Voice_Transfer_Reports", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceTransferReport/index.js", "groupTitle": "Voice_Transfer_Reports" }, { "type": "get", "url": "/api/voice/transfers/reports", "title": "Gets a list of Transfer Reports", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/transfers/reports -v -u {name}:{password}", "type": "json" } ], "name": "GetTransfer_Reports", "group": "Voice_Transfer_Reports", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/voice/transfers/reports?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/voice/transfers/reports?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/voice/transfers/reports?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/voice/transfers/reports?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/voice/transfers/reports?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/voiceTransferReport/index.js", "groupTitle": "Voice_Transfer_Reports" }, { "type": "get", "url": "/api/voice/transfers/reports/{id}", "title": "Gets a single Transfer Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/transfers/reports/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowTransfer_Reports", "group": "Voice_Transfer_Reports", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceTransferReport/index.js", "groupTitle": "Voice_Transfer_Reports" }, { "type": "put", "url": "/api/voice/transfers/reports/{id}", "title": "Update an existing Transfer Report", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voice/transfers/reports/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateTransfer_Reports", "group": "Voice_Transfer_Reports", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceTransferReport/index.js", "groupTitle": "Voice_Transfer_Reports" }, { "type": "post", "url": "/api/integrations/zendesk/accounts", "title": "Creates a new Zendesk Account", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/zendesk/accounts -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateZendesk_Accounts", "group": "Zendesk_Accounts", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": true, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "username", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "password", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "token", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "remoteUri", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"password\"", "\"token\"" ], "optional": true, "field": "authType", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "serverUrl", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"integrationTab\"", "\"newTab\"" ], "optional": true, "field": "type", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intZendeskAccount/index.js", "groupTitle": "Zendesk_Accounts" }, { "type": "delete", "url": "/api/integrations/zendesk/accounts/{id}", "title": "Deletes a Zendesk Account", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/zendesk/accounts/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteZendesk_Accounts", "group": "Zendesk_Accounts", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intZendeskAccount/index.js", "groupTitle": "Zendesk_Accounts" }, { "type": "get", "url": "/api/integrations/zendesk/accounts", "title": "Gets a list of Zendesk Accounts", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/zendesk/accounts -v -u {name}:{password}", "type": "json" } ], "name": "GetZendesk_Accounts", "group": "Zendesk_Accounts", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/integrations/zendesk/accounts?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/integrations/zendesk/accounts?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/integrations/zendesk/accounts?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/integrations/zendesk/accounts?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/integrations/zendesk/accounts?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/intZendeskAccount/index.js", "groupTitle": "Zendesk_Accounts" }, { "type": "get", "url": "/api/integrations/zendesk/accounts/{id}", "title": "Gets a single Zendesk Account", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/zendesk/accounts/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowZendesk_Accounts", "group": "Zendesk_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intZendeskAccount/index.js", "groupTitle": "Zendesk_Accounts" }, { "type": "post", "url": "/api/integrations/zendesk/accounts/{id}/configurations", "title": "Creates new configuration", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/zendesk/accounts/{id}/configurations -d '{\"name\": \"conf1\"}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addConfiguration", "group": "Zendesk_Accounts", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intZendeskAccount/index.js", "groupTitle": "Zendesk_Accounts" }, { "type": "get", "url": "/api/integrations/zendesk/accounts/{id}/configurations", "title": "Gets account configurations", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/zendesk/accounts/{id}/configurations -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getConfigurations", "group": "Zendesk_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intZendeskAccount/index.js", "groupTitle": "Zendesk_Accounts" }, { "type": "get", "url": "/api/integrations/zendesk/accounts/{id}/fields", "title": "Gets account fields", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/zendesk/accounts/{id}/fields -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getFields", "group": "Zendesk_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intZendeskAccount/index.js", "groupTitle": "Zendesk_Accounts" }, { "type": "put", "url": "/api/integrations/zendesk/accounts/{id}", "title": "Update an existing Zendesk Account", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/zendesk/accounts/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateZendesk_Accounts", "group": "Zendesk_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intZendeskAccount/index.js", "groupTitle": "Zendesk_Accounts" }, { "type": "post", "url": "/api/integrations/zendesk/configurations", "title": "Creates a new Zendesk Configuration", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/zendesk/configurations -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateZendesk_Configurations", "group": "Zendesk_Configurations", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": true, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intZendeskConfiguration/index.js", "groupTitle": "Zendesk_Configurations" }, { "type": "delete", "url": "/api/integrations/zendesk/configurations/{id}", "title": "Deletes a Zendesk Configuration", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/zendesk/configurations/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteZendesk_Configurations", "group": "Zendesk_Configurations", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intZendeskConfiguration/index.js", "groupTitle": "Zendesk_Configurations" }, { "type": "get", "url": "/api/integrations/zendesk/configurations", "title": "Gets a list of Zendesk Configurations", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/zendesk/configurations -v -u {name}:{password}", "type": "json" } ], "name": "GetZendesk_Configurations", "group": "Zendesk_Configurations", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/integrations/zendesk/configurations?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/integrations/zendesk/configurations?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/integrations/zendesk/configurations?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/integrations/zendesk/configurations?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/integrations/zendesk/configurations?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/intZendeskConfiguration/index.js", "groupTitle": "Zendesk_Configurations" }, { "type": "get", "url": "/api/integrations/zendesk/configurations/{id}", "title": "Gets a single Zendesk Configuration", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/zendesk/configurations/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowZendesk_Configurations", "group": "Zendesk_Configurations", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intZendeskConfiguration/index.js", "groupTitle": "Zendesk_Configurations" }, { "type": "get", "url": "/api/integrations/zendesk/configurations/{id}/descriptions", "title": "Gets configurations descriptions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/zendesk/configurations/{id}/descriptions -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getDescriptions", "group": "Zendesk_Configurations", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intZendeskConfiguration/index.js", "groupTitle": "Zendesk_Configurations" }, { "type": "get", "url": "/api/integrations/zendesk/configurations/{id}/fields", "title": "Gets configurations fields", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/zendesk/configurations/{id}/fields -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getFields", "group": "Zendesk_Configurations", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intZendeskConfiguration/index.js", "groupTitle": "Zendesk_Configurations" }, { "type": "get", "url": "/api/integrations/zendesk/configurations/{id}/subjects", "title": "Gets configurations subjects", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/zendesk/configurations/{id}/subjects -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getSubjects", "group": "Zendesk_Configurations", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intZendeskConfiguration/index.js", "groupTitle": "Zendesk_Configurations" }, { "type": "get", "url": "/api/integrations/zendesk/configurations/{id}/tags", "title": "Gets configurations tags", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/zendesk/configurations/{id}/tags -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getTags", "group": "Zendesk_Configurations", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intZendeskConfiguration/index.js", "groupTitle": "Zendesk_Configurations" }, { "type": "post", "url": "/api/integrations/zendesk/configurations/{id}/tags", "title": "Sets new tags", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/zendesk/configurations/{id}/tags -d '{\"ids\": [1,12]}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "setTags", "group": "Zendesk_Configurations", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intZendeskConfiguration/index.js", "groupTitle": "Zendesk_Configurations" }, { "type": "put", "url": "/api/integrations/zendesk/configurations/{id}", "title": "Update an existing Zendesk Configuration", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/zendesk/configurations/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateZendesk_Configurations", "group": "Zendesk_Configurations", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intZendeskConfiguration/index.js", "groupTitle": "Zendesk_Configurations" }, { "type": "post", "url": "/api/integrations/zendesk/fields", "title": "Creates a new Zendesk Field", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/zendesk/fields -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateZendesk_Fields", "group": "Zendesk_Fields", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "allowedValues": [ "\"string\"", "\"variable\"", "\"customVariable\"", "\"keyValue\"" ], "optional": true, "field": "type", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "content", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "key", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"string\"", "\"variable\"", "\"customVariable\"" ], "optional": true, "field": "keyType", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "keyContent", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "idField", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "nameField", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "customField", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "variableName", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intZendeskField/index.js", "groupTitle": "Zendesk_Fields" }, { "type": "delete", "url": "/api/integrations/zendesk/fields/{id}", "title": "Deletes a Zendesk Field", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/zendesk/fields/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteZendesk_Fields", "group": "Zendesk_Fields", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intZendeskField/index.js", "groupTitle": "Zendesk_Fields" }, { "type": "get", "url": "/api/integrations/zendesk/fields", "title": "Gets a list of Zendesk Fields", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/zendesk/fields -v -u {name}:{password}", "type": "json" } ], "name": "GetZendesk_Fields", "group": "Zendesk_Fields", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/integrations/zendesk/fields?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/integrations/zendesk/fields?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/integrations/zendesk/fields?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/integrations/zendesk/fields?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/integrations/zendesk/fields?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/intZendeskField/index.js", "groupTitle": "Zendesk_Fields" }, { "type": "get", "url": "/api/integrations/zendesk/fields/{id}", "title": "Gets a single Zendesk Field", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/zendesk/fields/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowZendesk_Fields", "group": "Zendesk_Fields", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intZendeskField/index.js", "groupTitle": "Zendesk_Fields" }, { "type": "put", "url": "/api/integrations/zendesk/fields/{id}", "title": "Update an existing Zendesk Field", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/zendesk/fields/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateZendesk_Fields", "group": "Zendesk_Fields", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intZendeskField/index.js", "groupTitle": "Zendesk_Fields" }, { "type": "post", "url": "/api/integrations/zoho/accounts", "title": "Creates a new Zoho Account", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/zoho/accounts -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateZoho_Accounts", "group": "Zoho_Accounts", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": true, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "authToken", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "host", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "serverUrl", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intZohoAccount/index.js", "groupTitle": "Zoho_Accounts" }, { "type": "delete", "url": "/api/integrations/zoho/accounts/{id}", "title": "Deletes a Zoho Account", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/zoho/accounts/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteZoho_Accounts", "group": "Zoho_Accounts", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intZohoAccount/index.js", "groupTitle": "Zoho_Accounts" }, { "type": "get", "url": "/api/integrations/zoho/accounts", "title": "Gets a list of Zoho Accounts", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/zoho/accounts -v -u {name}:{password}", "type": "json" } ], "name": "GetZoho_Accounts", "group": "Zoho_Accounts", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/integrations/zoho/accounts?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/integrations/zoho/accounts?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/integrations/zoho/accounts?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/integrations/zoho/accounts?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/integrations/zoho/accounts?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/intZohoAccount/index.js", "groupTitle": "Zoho_Accounts" }, { "type": "get", "url": "/api/integrations/zoho/accounts/{id}", "title": "Gets a single Zoho Account", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/zoho/accounts/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowZoho_Accounts", "group": "Zoho_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intZohoAccount/index.js", "groupTitle": "Zoho_Accounts" }, { "type": "post", "url": "/api/integrations/zoho/accounts/{id}/configurations", "title": "Creates new configuration", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/zoho/accounts/{id}/configurations -d '{\"name\": \"conf1\"}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST", "type": "json" } ], "name": "addConfiguration", "group": "Zoho_Accounts", "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intZohoAccount/index.js", "groupTitle": "Zoho_Accounts" }, { "type": "get", "url": "/api/integrations/zoho/accounts/{id}/configurations", "title": "Gets account configurations", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/zoho/accounts/{id}/configurations -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getConfigurations", "group": "Zoho_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intZohoAccount/index.js", "groupTitle": "Zoho_Accounts" }, { "type": "get", "url": "/api/integrations/zoho/accounts/{id}/fields", "title": "Gets account fields", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/zoho/accounts/{id}/fields -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getFields", "group": "Zoho_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intZohoAccount/index.js", "groupTitle": "Zoho_Accounts" }, { "type": "put", "url": "/api/integrations/zoho/accounts/{id}", "title": "Update an existing Zoho Account", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/zoho/accounts/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateZoho_Accounts", "group": "Zoho_Accounts", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intZohoAccount/index.js", "groupTitle": "Zoho_Accounts" }, { "type": "post", "url": "/api/integrations/zoho/configurations", "title": "Creates a new Zoho Configuration", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/zoho/configurations -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateZoho_Configurations", "group": "Zoho_Configurations", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": true, "field": "name", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "description", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intZohoConfiguration/index.js", "groupTitle": "Zoho_Configurations" }, { "type": "delete", "url": "/api/integrations/zoho/configurations/{id}", "title": "Deletes a Zoho Configuration", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/zoho/configurations/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteZoho_Configurations", "group": "Zoho_Configurations", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intZohoConfiguration/index.js", "groupTitle": "Zoho_Configurations" }, { "type": "get", "url": "/api/integrations/zoho/configurations", "title": "Gets a list of Zoho Configurations", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/zoho/configurations -v -u {name}:{password}", "type": "json" } ], "name": "GetZoho_Configurations", "group": "Zoho_Configurations", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/integrations/zoho/configurations?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/integrations/zoho/configurations?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/integrations/zoho/configurations?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/integrations/zoho/configurations?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/integrations/zoho/configurations?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/intZohoConfiguration/index.js", "groupTitle": "Zoho_Configurations" }, { "type": "get", "url": "/api/integrations/zoho/configurations/{id}", "title": "Gets a single Zoho Configuration", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/zoho/configurations/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowZoho_Configurations", "group": "Zoho_Configurations", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intZohoConfiguration/index.js", "groupTitle": "Zoho_Configurations" }, { "type": "get", "url": "/api/integrations/zoho/configurations/{id}/descriptions", "title": "Gets configurations descriptions", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/zoho/configurations/{id}/descriptions -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getDescriptions", "group": "Zoho_Configurations", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intZohoConfiguration/index.js", "groupTitle": "Zoho_Configurations" }, { "type": "get", "url": "/api/integrations/zoho/configurations/{id}/fields", "title": "Gets configurations fields", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/zoho/configurations/{id}/fields -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getFields", "group": "Zoho_Configurations", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intZohoConfiguration/index.js", "groupTitle": "Zoho_Configurations" }, { "type": "get", "url": "/api/integrations/zoho/configurations/{id}/subjects", "title": "Gets configurations subjects", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/zoho/configurations/{id}/subjects -v -u {name}:{password} -X GET", "type": "json" } ], "name": "getSubjects", "group": "Zoho_Configurations", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intZohoConfiguration/index.js", "groupTitle": "Zoho_Configurations" }, { "type": "put", "url": "/api/integrations/zoho/configurations/{id}", "title": "Update an existing Zoho Configuration", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/zoho/configurations/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateZoho_Configurations", "group": "Zoho_Configurations", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intZohoConfiguration/index.js", "groupTitle": "Zoho_Configurations" }, { "type": "post", "url": "/api/integrations/zoho/fields", "title": "Creates a new Zoho Field", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/zoho/fields -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateZoho_Fields", "group": "Zoho_Fields", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "allowedValues": [ "\"string\"", "\"variable\"", "\"customVariable\"", "\"keyValue\"" ], "optional": true, "field": "type", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "content", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "key", "description": "" }, { "group": "Body", "type": "String", "allowedValues": [ "\"string\"", "\"variable\"", "\"customVariable\"" ], "optional": true, "field": "keyType", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "keyContent", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "idField", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "nameField", "description": "" }, { "group": "Body", "type": "Boolean", "optional": true, "field": "customField", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "variableName", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intZohoField/index.js", "groupTitle": "Zoho_Fields" }, { "type": "delete", "url": "/api/integrations/zoho/fields/{id}", "title": "Deletes a Zoho Field", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/zoho/fields/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteZoho_Fields", "group": "Zoho_Fields", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intZohoField/index.js", "groupTitle": "Zoho_Fields" }, { "type": "get", "url": "/api/integrations/zoho/fields", "title": "Gets a list of Zoho Fields", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/zoho/fields -v -u {name}:{password}", "type": "json" } ], "name": "GetZoho_Fields", "group": "Zoho_Fields", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/integrations/zoho/fields?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/integrations/zoho/fields?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/integrations/zoho/fields?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/integrations/zoho/fields?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/integrations/zoho/fields?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/intZohoField/index.js", "groupTitle": "Zoho_Fields" }, { "type": "get", "url": "/api/integrations/zoho/fields/{id}", "title": "Gets a single Zoho Field", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/zoho/fields/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowZoho_Fields", "group": "Zoho_Fields", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intZohoField/index.js", "groupTitle": "Zoho_Fields" }, { "type": "put", "url": "/api/integrations/zoho/fields/{id}", "title": "Update an existing Zoho Field", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/integrations/zoho/fields/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateZoho_Fields", "group": "Zoho_Fields", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/intZohoField/index.js", "groupTitle": "Zoho_Fields" }, { "type": "post", "url": "/api/cdr", "title": "Creates a new Cdr", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cdr -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateCdrs", "group": "cdr", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": false, "field": "calldate", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "clid", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "src", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "dst", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "dcontext", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "channel", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "dstchannel", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "lastapp", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "lastdata", "description": "" }, { "group": "Body", "type": "Integer", "optional": false, "field": "duration", "description": "" }, { "group": "Body", "type": "Integer", "optional": false, "field": "billsec", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "disposition", "description": "" }, { "group": "Body", "type": "Integer", "optional": false, "field": "amaflags", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "accountcode", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "userfield", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "uniqueid", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "linkedid", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "sequence", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "peeraccount", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "type", "description": "" }, { "group": "Body", "type": "String", "optional": true, "field": "tag", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cdr/index.js", "groupTitle": "cdr" }, { "type": "delete", "url": "/api/cdr/{id}", "title": "Deletes a Cdr", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cdr/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteCdrs", "group": "cdr", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cdr/index.js", "groupTitle": "cdr" }, { "type": "get", "url": "/api/cdr", "title": "Gets a list of Cdrs", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cdr -v -u {name}:{password}", "type": "json" } ], "name": "GetCdrs", "group": "cdr", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/cdr?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/cdr?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/cdr?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/cdr?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/cdr?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/cdr/index.js", "groupTitle": "cdr" }, { "type": "get", "url": "/api/cdr/{id}", "title": "Gets a single Cdr", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cdr/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowCdrs", "group": "cdr", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cdr/index.js", "groupTitle": "cdr" }, { "type": "put", "url": "/api/cdr/{id}", "title": "Update an existing Cdr", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/cdr/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateCdrs", "group": "cdr", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/cdr/index.js", "groupTitle": "cdr" }, { "type": "post", "url": "/api/voiceQueuesLog", "title": "Creates a new VoiceQueuesLog", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voiceQueuesLog -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST", "type": "json" } ], "name": "CreateVoiceQueuesLogs", "group": "voiceQueuesLog", "parameter": { "fields": { "Body": [ { "group": "Body", "type": "String", "optional": true, "field": "time", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "callid", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "queuename", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "agent", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "event", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "data1", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "data2", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "data3", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "data4", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "data5", "description": "" }, { "group": "Body", "type": "String", "optional": false, "field": "dtm", "description": "" } ] } }, "description": "

Motion will return a HTTP status code 201 upon success.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceQueuesLog/index.js", "groupTitle": "voiceQueuesLog" }, { "type": "delete", "url": "/api/voiceQueuesLog/{id}", "title": "Deletes a VoiceQueuesLog", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voiceQueuesLog/{id} -v -u {name}:{password} -X DELETE", "type": "json" } ], "name": "DeleteVoiceQueuesLogs", "group": "voiceQueuesLog", "description": "

Motion will return a HTTP status code 204 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceQueuesLog/index.js", "groupTitle": "voiceQueuesLog" }, { "type": "get", "url": "/api/voiceQueuesLog", "title": "Gets a list of VoiceQueuesLogs", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voiceQueuesLog -v -u {name}:{password}", "type": "json" } ], "name": "GetVoiceQueuesLogs", "group": "voiceQueuesLog", "description": "

Motion will always return paged results. Motion returns paging data in the Content-Range header in the form start - end / total.

Upon success Motion will return a HTTP status code 200 OK if the entire collection was returned otherwise it will return a HTTP status code 206 Partial Content.

Motion renders the resulting JSON representation in the response body.

Retrieving Specific Fields

To return only specific fields for a result set you can utilize the fields parameter. This parameter accepts a comma-separated list.

A call returning only id and name for a result set would look like this.

GET /api/voiceQueuesLog?fields=id,name

Filtering

You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.

A call returning a result set for records with name of john.doe or jane.miller.

GET /api/voiceQueuesLog?name=john.doe,jane.miller

If you use the key filter the result will be filtered by the value you specify.

GET /api/voiceQueuesLog?filter=john

Sorting

To sort a result set based on one or several fields you can utilize the sort parameter. This parameters accepts a comma-separated list.

Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (-).

A call sorting a result by id ascending and then name descending would look like this.

GET /api/voiceQueuesLog?sort=id,-name

Offset and Limit

Query results are always paged. Motion leverages the offset and limit parameters to facilitate this.

When the neither of these parameters are explicitly supplied the handler will assume the a default limit of 100.

offset is a number indicating the start position in the result set you want to return.

limit is a number indicating how many records past the start position you want returned.

A call with a result set starting at 5 and returning no more than 25 records would look like this.

GET /api/voiceQueuesLog?offset=5&limit=25

If there were 50 records in total, the returned Content-Range header would look like this.

Content-Range: 5-30/50

", "version": "0.0.0", "filename": "server/api/voiceQueuesLog/index.js", "groupTitle": "voiceQueuesLog" }, { "type": "get", "url": "/api/voiceQueuesLog/{id}", "title": "Gets a single VoiceQueuesLog", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voiceQueuesLog/{id} -v -u {name}:{password}", "type": "json" } ], "name": "ShowVoiceQueuesLogs", "group": "voiceQueuesLog", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceQueuesLog/index.js", "groupTitle": "voiceQueuesLog" }, { "type": "put", "url": "/api/voiceQueuesLog/{id}", "title": "Update an existing VoiceQueuesLog", "examples": [ { "title": "Example usage:", "content": "curl https://{domain}/api/voiceQueuesLog/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT", "type": "json" } ], "name": "updateVoiceQueuesLogs", "group": "voiceQueuesLog", "description": "

Motion will return a HTTP status code 200 upon success. Motion return a HTTP status code 404 if the corresponding record could not be located.

Motion renders the resulting JSON representation in the response body.

", "version": "0.0.0", "filename": "server/api/voiceQueuesLog/index.js", "groupTitle": "voiceQueuesLog" } ] diff --git a/apidoc/api_project.js b/apidoc/api_project.js index d11ee34..34d3bd6 100644 --- a/apidoc/api_project.js +++ b/apidoc/api_project.js @@ -1 +1 @@ -define({ "name": "xCALLY Motion API", "version": "2.0.54", "description": "Thank you for choosing xCALLY MOTION, one of the first Omni Channel solution integrated with AsteriskTM and the most innovative real time solutions available on the market.", "title": "xCALLY MOTION API", "header": { "title": "Introduction", "content": "

The API

\n

This is the documentation for the xCALLY MOTION API.

\n

We make changes to the APIs from time to time. For more information, see Changelog.

\n

The xCALLY MOTION API consists of several different APIs. Use the left sidebar menu to select one.

\n

The API is a JSON API. XML is not supported. To learn more, see [Working with JSON].

\n

Endpoints are documented with the HTTP method for the request and a partial resource identifier.\nExample:

\n
GET /api/users\n
\n

Prepend your xCALLY URL to the resource identifier to get the full endpoint URL:

\n
https://motion.xcally.com/api/users\n
\n

Curly braces, {}, indicate values you have to supply. Example:

\n
GET  /api/users/{id}\n
\n

The examples in the docs are cURL statements. You can run the statements on a command line to try out different API requests. To learn more, see [Installing and using cURL]. In Windows, you'll need to modify some of the examples in the docs to make them work. See [Using cURL in Windows].

\n

The examples use basic authentication requiring a xCALLY username and password.

\n

Security and Authentication

\n

This is an SSL-only API, regardless of how your account is configured. You can authorize against the API using either basic authentication with your username and password or with an OAuth access token.

\n

Client-side CORS requests are supported if the request is authenticated with an OAuth access token. The requests are not supported if the request uses basic authentication or a xCALLY API token.

\n

Basic authentication

\n

Use the following authentication format with your username and password:\n{username}:{password}

\n

Example:

\n
curl -u admin:password https://motion.xcally.com/api/users\n
\n

OAuth access token

\n

The xCALLY API supports OAuth authorization flows.

\n

OAuth access tokens also permit client-side API requests.

\n

In your requests, specify the access token in an Authorization header as follows:\nAuthorization: Bearer {token}

\n

Example:

\n
curl -H "Authorization: Bearer gErypPlm4dOVgGRvA1ZzMH5MQ3nLo8bo" https://motion.xcally.com/api/users\n
\n

Request Format

\n

The xCALLY API is a JSON API. You must supply a Content-Type: application/json header in PUT and POST requests. You must set an Accept: application/json header on all requests. You may get a text/plain response in case of an error like a bad request. You should treat this as an error you need to fix.

\n

Response Format

\n

The xCALLY API responds to successful requests with HTTP status codes in the 200 or 300 range. When you create or update a resource, the API renders the resulting JSON representation in the response body.

\n

Responses may have the status codes described in the following sections.

\n

200 range

\n

The request was successful. The status is 200 for successful GET and PUT requests, 201 for most POST requests, and 204 for DELETE requests.

\n

400 range

\n

The request was not successful. The content type of the response may be text/plain for API-level error messages, such as when trying to call the API without SSL. The content type is application/json for business-level error messages because the response includes a JSON object with information about the error.

\n

If you see a response from a known endpoint that looks like plain text, you probably made a syntax error in your request. This type of response commonly occurs when making a request to a nonexistent xCALLY Support instance.

\n

500 range

\n

When building an API client, we recommend treating any 500 status codes as a warning or temporary state. However, if the status persists and we don't have a publicly announced maintenance or service disruption, contact us at support@xcally.com.

\n

If submitting a ticket to Support, provide the complete HTTP response. This helps the Support team track down the request in the logs more quickly.

\n

Data Types

\n

The API returns and accepts JSON values, which can be strings in double quotes, numbers, objects, arrays, true or false, or null. Most programming languages have tools to parse this data.

\n

ID integers

\n

Most xCALLY Support resources such as queues and users are identified by the integer specified by the id attribute of API responses.

\n

The default numeric type in JavaScript, Ruby, Python, and PHP is sufficient to represent xCALLY Support ID integers.

\n

Time stamps

\n

Time stamps use UTC time and are formatted as ISO 8601 strings. Example: 2017-04-16T09:14:57Z

\n" }, "template": { "withGenerator": false, "withCompare": false, "forceLanguage": "en" }, "sampleUrl": false, "defaultVersion": "0.0.0", "apidoc": "0.3.0", "generator": { "name": "apidoc", "time": "2018-04-23T10:12:25.636Z", "url": "http://apidocjs.com", "version": "0.17.6" } }); +define({ "name": "xCALLY Motion API", "version": "2.0.55", "description": "Thank you for choosing xCALLY MOTION, one of the first Omni Channel solution integrated with AsteriskTM and the most innovative real time solutions available on the market.", "title": "xCALLY MOTION API", "header": { "title": "Introduction", "content": "

The API

\n

This is the documentation for the xCALLY MOTION API.

\n

We make changes to the APIs from time to time. For more information, see Changelog.

\n

The xCALLY MOTION API consists of several different APIs. Use the left sidebar menu to select one.

\n

The API is a JSON API. XML is not supported. To learn more, see [Working with JSON].

\n

Endpoints are documented with the HTTP method for the request and a partial resource identifier.\nExample:

\n
GET /api/users\n
\n

Prepend your xCALLY URL to the resource identifier to get the full endpoint URL:

\n
https://motion.xcally.com/api/users\n
\n

Curly braces, {}, indicate values you have to supply. Example:

\n
GET  /api/users/{id}\n
\n

The examples in the docs are cURL statements. You can run the statements on a command line to try out different API requests. To learn more, see [Installing and using cURL]. In Windows, you'll need to modify some of the examples in the docs to make them work. See [Using cURL in Windows].

\n

The examples use basic authentication requiring a xCALLY username and password.

\n

Security and Authentication

\n

This is an SSL-only API, regardless of how your account is configured. You can authorize against the API using either basic authentication with your username and password or with an OAuth access token.

\n

Client-side CORS requests are supported if the request is authenticated with an OAuth access token. The requests are not supported if the request uses basic authentication or a xCALLY API token.

\n

Basic authentication

\n

Use the following authentication format with your username and password:\n{username}:{password}

\n

Example:

\n
curl -u admin:password https://motion.xcally.com/api/users\n
\n

OAuth access token

\n

The xCALLY API supports OAuth authorization flows.

\n

OAuth access tokens also permit client-side API requests.

\n

In your requests, specify the access token in an Authorization header as follows:\nAuthorization: Bearer {token}

\n

Example:

\n
curl -H "Authorization: Bearer gErypPlm4dOVgGRvA1ZzMH5MQ3nLo8bo" https://motion.xcally.com/api/users\n
\n

Request Format

\n

The xCALLY API is a JSON API. You must supply a Content-Type: application/json header in PUT and POST requests. You must set an Accept: application/json header on all requests. You may get a text/plain response in case of an error like a bad request. You should treat this as an error you need to fix.

\n

Response Format

\n

The xCALLY API responds to successful requests with HTTP status codes in the 200 or 300 range. When you create or update a resource, the API renders the resulting JSON representation in the response body.

\n

Responses may have the status codes described in the following sections.

\n

200 range

\n

The request was successful. The status is 200 for successful GET and PUT requests, 201 for most POST requests, and 204 for DELETE requests.

\n

400 range

\n

The request was not successful. The content type of the response may be text/plain for API-level error messages, such as when trying to call the API without SSL. The content type is application/json for business-level error messages because the response includes a JSON object with information about the error.

\n

If you see a response from a known endpoint that looks like plain text, you probably made a syntax error in your request. This type of response commonly occurs when making a request to a nonexistent xCALLY Support instance.

\n

500 range

\n

When building an API client, we recommend treating any 500 status codes as a warning or temporary state. However, if the status persists and we don't have a publicly announced maintenance or service disruption, contact us at support@xcally.com.

\n

If submitting a ticket to Support, provide the complete HTTP response. This helps the Support team track down the request in the logs more quickly.

\n

Data Types

\n

The API returns and accepts JSON values, which can be strings in double quotes, numbers, objects, arrays, true or false, or null. Most programming languages have tools to parse this data.

\n

ID integers

\n

Most xCALLY Support resources such as queues and users are identified by the integer specified by the id attribute of API responses.

\n

The default numeric type in JavaScript, Ruby, Python, and PHP is sufficient to represent xCALLY Support ID integers.

\n

Time stamps

\n

Time stamps use UTC time and are formatted as ISO 8601 strings. Example: 2017-04-16T09:14:57Z

\n" }, "template": { "withGenerator": false, "withCompare": false, "forceLanguage": "en" }, "sampleUrl": false, "defaultVersion": "0.0.0", "apidoc": "0.3.0", "generator": { "name": "apidoc", "time": "2018-04-26T12:08:29.814Z", "url": "http://apidocjs.com", "version": "0.17.6" } }); diff --git a/apidoc/api_project.json b/apidoc/api_project.json index 1348273..19a541a 100644 --- a/apidoc/api_project.json +++ b/apidoc/api_project.json @@ -1 +1 @@ -{ "name": "xCALLY Motion API", "version": "2.0.54", "description": "Thank you for choosing xCALLY MOTION, one of the first Omni Channel solution integrated with AsteriskTM and the most innovative real time solutions available on the market.", "title": "xCALLY MOTION API", "header": { "title": "Introduction", "content": "

The API

\n

This is the documentation for the xCALLY MOTION API.

\n

We make changes to the APIs from time to time. For more information, see Changelog.

\n

The xCALLY MOTION API consists of several different APIs. Use the left sidebar menu to select one.

\n

The API is a JSON API. XML is not supported. To learn more, see [Working with JSON].

\n

Endpoints are documented with the HTTP method for the request and a partial resource identifier.\nExample:

\n
GET /api/users\n
\n

Prepend your xCALLY URL to the resource identifier to get the full endpoint URL:

\n
https://motion.xcally.com/api/users\n
\n

Curly braces, {}, indicate values you have to supply. Example:

\n
GET  /api/users/{id}\n
\n

The examples in the docs are cURL statements. You can run the statements on a command line to try out different API requests. To learn more, see [Installing and using cURL]. In Windows, you'll need to modify some of the examples in the docs to make them work. See [Using cURL in Windows].

\n

The examples use basic authentication requiring a xCALLY username and password.

\n

Security and Authentication

\n

This is an SSL-only API, regardless of how your account is configured. You can authorize against the API using either basic authentication with your username and password or with an OAuth access token.

\n

Client-side CORS requests are supported if the request is authenticated with an OAuth access token. The requests are not supported if the request uses basic authentication or a xCALLY API token.

\n

Basic authentication

\n

Use the following authentication format with your username and password:\n{username}:{password}

\n

Example:

\n
curl -u admin:password https://motion.xcally.com/api/users\n
\n

OAuth access token

\n

The xCALLY API supports OAuth authorization flows.

\n

OAuth access tokens also permit client-side API requests.

\n

In your requests, specify the access token in an Authorization header as follows:\nAuthorization: Bearer {token}

\n

Example:

\n
curl -H "Authorization: Bearer gErypPlm4dOVgGRvA1ZzMH5MQ3nLo8bo" https://motion.xcally.com/api/users\n
\n

Request Format

\n

The xCALLY API is a JSON API. You must supply a Content-Type: application/json header in PUT and POST requests. You must set an Accept: application/json header on all requests. You may get a text/plain response in case of an error like a bad request. You should treat this as an error you need to fix.

\n

Response Format

\n

The xCALLY API responds to successful requests with HTTP status codes in the 200 or 300 range. When you create or update a resource, the API renders the resulting JSON representation in the response body.

\n

Responses may have the status codes described in the following sections.

\n

200 range

\n

The request was successful. The status is 200 for successful GET and PUT requests, 201 for most POST requests, and 204 for DELETE requests.

\n

400 range

\n

The request was not successful. The content type of the response may be text/plain for API-level error messages, such as when trying to call the API without SSL. The content type is application/json for business-level error messages because the response includes a JSON object with information about the error.

\n

If you see a response from a known endpoint that looks like plain text, you probably made a syntax error in your request. This type of response commonly occurs when making a request to a nonexistent xCALLY Support instance.

\n

500 range

\n

When building an API client, we recommend treating any 500 status codes as a warning or temporary state. However, if the status persists and we don't have a publicly announced maintenance or service disruption, contact us at support@xcally.com.

\n

If submitting a ticket to Support, provide the complete HTTP response. This helps the Support team track down the request in the logs more quickly.

\n

Data Types

\n

The API returns and accepts JSON values, which can be strings in double quotes, numbers, objects, arrays, true or false, or null. Most programming languages have tools to parse this data.

\n

ID integers

\n

Most xCALLY Support resources such as queues and users are identified by the integer specified by the id attribute of API responses.

\n

The default numeric type in JavaScript, Ruby, Python, and PHP is sufficient to represent xCALLY Support ID integers.

\n

Time stamps

\n

Time stamps use UTC time and are formatted as ISO 8601 strings. Example: 2017-04-16T09:14:57Z

\n" }, "template": { "withGenerator": false, "withCompare": false, "forceLanguage": "en" }, "sampleUrl": false, "defaultVersion": "0.0.0", "apidoc": "0.3.0", "generator": { "name": "apidoc", "time": "2018-04-23T10:12:25.636Z", "url": "http://apidocjs.com", "version": "0.17.6" } } +{ "name": "xCALLY Motion API", "version": "2.0.55", "description": "Thank you for choosing xCALLY MOTION, one of the first Omni Channel solution integrated with AsteriskTM and the most innovative real time solutions available on the market.", "title": "xCALLY MOTION API", "header": { "title": "Introduction", "content": "

The API

\n

This is the documentation for the xCALLY MOTION API.

\n

We make changes to the APIs from time to time. For more information, see Changelog.

\n

The xCALLY MOTION API consists of several different APIs. Use the left sidebar menu to select one.

\n

The API is a JSON API. XML is not supported. To learn more, see [Working with JSON].

\n

Endpoints are documented with the HTTP method for the request and a partial resource identifier.\nExample:

\n
GET /api/users\n
\n

Prepend your xCALLY URL to the resource identifier to get the full endpoint URL:

\n
https://motion.xcally.com/api/users\n
\n

Curly braces, {}, indicate values you have to supply. Example:

\n
GET  /api/users/{id}\n
\n

The examples in the docs are cURL statements. You can run the statements on a command line to try out different API requests. To learn more, see [Installing and using cURL]. In Windows, you'll need to modify some of the examples in the docs to make them work. See [Using cURL in Windows].

\n

The examples use basic authentication requiring a xCALLY username and password.

\n

Security and Authentication

\n

This is an SSL-only API, regardless of how your account is configured. You can authorize against the API using either basic authentication with your username and password or with an OAuth access token.

\n

Client-side CORS requests are supported if the request is authenticated with an OAuth access token. The requests are not supported if the request uses basic authentication or a xCALLY API token.

\n

Basic authentication

\n

Use the following authentication format with your username and password:\n{username}:{password}

\n

Example:

\n
curl -u admin:password https://motion.xcally.com/api/users\n
\n

OAuth access token

\n

The xCALLY API supports OAuth authorization flows.

\n

OAuth access tokens also permit client-side API requests.

\n

In your requests, specify the access token in an Authorization header as follows:\nAuthorization: Bearer {token}

\n

Example:

\n
curl -H "Authorization: Bearer gErypPlm4dOVgGRvA1ZzMH5MQ3nLo8bo" https://motion.xcally.com/api/users\n
\n

Request Format

\n

The xCALLY API is a JSON API. You must supply a Content-Type: application/json header in PUT and POST requests. You must set an Accept: application/json header on all requests. You may get a text/plain response in case of an error like a bad request. You should treat this as an error you need to fix.

\n

Response Format

\n

The xCALLY API responds to successful requests with HTTP status codes in the 200 or 300 range. When you create or update a resource, the API renders the resulting JSON representation in the response body.

\n

Responses may have the status codes described in the following sections.

\n

200 range

\n

The request was successful. The status is 200 for successful GET and PUT requests, 201 for most POST requests, and 204 for DELETE requests.

\n

400 range

\n

The request was not successful. The content type of the response may be text/plain for API-level error messages, such as when trying to call the API without SSL. The content type is application/json for business-level error messages because the response includes a JSON object with information about the error.

\n

If you see a response from a known endpoint that looks like plain text, you probably made a syntax error in your request. This type of response commonly occurs when making a request to a nonexistent xCALLY Support instance.

\n

500 range

\n

When building an API client, we recommend treating any 500 status codes as a warning or temporary state. However, if the status persists and we don't have a publicly announced maintenance or service disruption, contact us at support@xcally.com.

\n

If submitting a ticket to Support, provide the complete HTTP response. This helps the Support team track down the request in the logs more quickly.

\n

Data Types

\n

The API returns and accepts JSON values, which can be strings in double quotes, numbers, objects, arrays, true or false, or null. Most programming languages have tools to parse this data.

\n

ID integers

\n

Most xCALLY Support resources such as queues and users are identified by the integer specified by the id attribute of API responses.

\n

The default numeric type in JavaScript, Ruby, Python, and PHP is sufficient to represent xCALLY Support ID integers.

\n

Time stamps

\n

Time stamps use UTC time and are formatted as ISO 8601 strings. Example: 2017-04-16T09:14:57Z

\n" }, "template": { "withGenerator": false, "withCompare": false, "forceLanguage": "en" }, "sampleUrl": false, "defaultVersion": "0.0.0", "apidoc": "0.3.0", "generator": { "name": "apidoc", "time": "2018-04-26T12:08:29.814Z", "url": "http://apidocjs.com", "version": "0.17.6" } } diff --git a/package.json b/package.json index 42130fe..55a1e08 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "motion", - "version": "2.0.54", + "version": "2.0.55", "description": "xCALLY Motion is the new Realtime asynchronous solution for your multichannel contact center over Asterisk.", "main": "server/app.js", "engines": { diff --git a/public/app/footer/i18n/da.json b/public/app/footer/i18n/da.json new file mode 100644 index 0000000..87eda5b --- /dev/null +++ b/public/app/footer/i18n/da.json @@ -0,0 +1,6 @@ +{ + "FOOTER": { + "ERRORS": {}, + "COOKIE_LAW": "Vi bruger cookies til at give dig den bedste oplevelse. Læs vores cookiepolitik ." + } +} \ No newline at end of file diff --git a/public/app/footer/i18n/de.json b/public/app/footer/i18n/de.json new file mode 100644 index 0000000..13f57e5 --- /dev/null +++ b/public/app/footer/i18n/de.json @@ -0,0 +1,6 @@ +{ + "FOOTER": { + "ERRORS": {}, + "COOKIE_LAW": "Wir verwenden Cookies, um Ihnen die bestmögliche Erfahrung zu bieten. Lesen Sie unsere Cookie-Richtlinie ." + } +} \ No newline at end of file diff --git a/public/app/footer/i18n/en.json b/public/app/footer/i18n/en.json new file mode 100644 index 0000000..ae4d6e5 --- /dev/null +++ b/public/app/footer/i18n/en.json @@ -0,0 +1,6 @@ +{ + "FOOTER": { + "COOKIE_LAW": "We use cookies to give you the best experience. Read our cookie policy.", + "ERRORS": {} + } +} \ No newline at end of file diff --git a/public/app/footer/i18n/es.json b/public/app/footer/i18n/es.json new file mode 100644 index 0000000..bd63378 --- /dev/null +++ b/public/app/footer/i18n/es.json @@ -0,0 +1,6 @@ +{ + "FOOTER": { + "ERRORS": {}, + "COOKIE_LAW": "Usamos cookies para brindarle la mejor experiencia. Lea nuestra política de cookies ." + } +} \ No newline at end of file diff --git a/public/app/footer/i18n/fa.json b/public/app/footer/i18n/fa.json new file mode 100644 index 0000000..8178f5d --- /dev/null +++ b/public/app/footer/i18n/fa.json @@ -0,0 +1,6 @@ +{ + "FOOTER": { + "ERRORS": {}, + "COOKIE_LAW": "ما از کوکی ها استفاده می کنیم تا بهترین تجربه را به شما بدهیم. خط مشی کوکی را بخوانید." + } +} \ No newline at end of file diff --git a/public/app/footer/i18n/fi.json b/public/app/footer/i18n/fi.json new file mode 100644 index 0000000..918eebb --- /dev/null +++ b/public/app/footer/i18n/fi.json @@ -0,0 +1,6 @@ +{ + "FOOTER": { + "ERRORS": {}, + "COOKIE_LAW": "Käytämme evästeitä saadaksesi sinulle parhaan mahdollisen kokemuksen. Lue evästekäytäntö ." + } +} \ No newline at end of file diff --git a/public/app/footer/i18n/fr.json b/public/app/footer/i18n/fr.json new file mode 100644 index 0000000..e381421 --- /dev/null +++ b/public/app/footer/i18n/fr.json @@ -0,0 +1,6 @@ +{ + "FOOTER": { + "ERRORS": {}, + "COOKIE_LAW": "Nous utilisons des cookies pour vous offrir la meilleure expérience. Lisez notre politique sur les cookies ." + } +} \ No newline at end of file diff --git a/public/app/footer/i18n/hi.json b/public/app/footer/i18n/hi.json new file mode 100644 index 0000000..4b41ed7 --- /dev/null +++ b/public/app/footer/i18n/hi.json @@ -0,0 +1,6 @@ +{ + "FOOTER": { + "ERRORS": {}, + "COOKIE_LAW": "हम आपको बेहतरीन अनुभव देने के लिए कुकीज़ का उपयोग करते हैं। हमारे कुकी नीति पढ़ें।" + } +} \ No newline at end of file diff --git a/public/app/footer/i18n/it.json b/public/app/footer/i18n/it.json new file mode 100644 index 0000000..bf090e1 --- /dev/null +++ b/public/app/footer/i18n/it.json @@ -0,0 +1,6 @@ +{ + "FOOTER": { + "ERRORS": {}, + "COOKIE_LAW": "Utilizziamo i cookie per fornirti un'esperienza migliore. Leggi la nostra cookie policy." + } +} \ No newline at end of file diff --git a/public/app/footer/i18n/ja.json b/public/app/footer/i18n/ja.json new file mode 100644 index 0000000..ac46437 --- /dev/null +++ b/public/app/footer/i18n/ja.json @@ -0,0 +1,6 @@ +{ + "FOOTER": { + "ERRORS": {}, + "COOKIE_LAW": "私たちはあなたに最高の経験を与えるためにクッキーを使用しています。 クッキーポリシーをご覧ください。" + } +} \ No newline at end of file diff --git a/public/app/footer/i18n/ko.json b/public/app/footer/i18n/ko.json new file mode 100644 index 0000000..51ee1c4 --- /dev/null +++ b/public/app/footer/i18n/ko.json @@ -0,0 +1,6 @@ +{ + "FOOTER": { + "ERRORS": {}, + "COOKIE_LAW": "우리는 쿠키를 사용하여 최고의 경험을 제공합니다. 쿠키 정책 을 읽어보십시오." + } +} \ No newline at end of file diff --git a/public/app/footer/i18n/lv.json b/public/app/footer/i18n/lv.json new file mode 100644 index 0000000..76a004a --- /dev/null +++ b/public/app/footer/i18n/lv.json @@ -0,0 +1,6 @@ +{ + "FOOTER": { + "ERRORS": {}, + "COOKIE_LAW": "Mēs izmantojam sīkdatnes, lai sniegtu jums vislabāko pieredzi. Lasiet mūsu sīkdatņu politika ." + } +} \ No newline at end of file diff --git a/public/app/footer/i18n/nl.json b/public/app/footer/i18n/nl.json new file mode 100644 index 0000000..d91bd31 --- /dev/null +++ b/public/app/footer/i18n/nl.json @@ -0,0 +1,6 @@ +{ + "FOOTER": { + "ERRORS": {}, + "COOKIE_LAW": "Wij gebruiken cookies om u de beste ervaring te bieden. Lees ons cookiebeleid ." + } +} \ No newline at end of file diff --git a/public/app/footer/i18n/no.json b/public/app/footer/i18n/no.json new file mode 100644 index 0000000..4c78449 --- /dev/null +++ b/public/app/footer/i18n/no.json @@ -0,0 +1,6 @@ +{ + "FOOTER": { + "ERRORS": {}, + "COOKIE_LAW": "Vi bruker informasjonskapsler for å gi deg den beste opplevelsen. Les vår informasjonskapsel ." + } +} \ No newline at end of file diff --git a/public/app/footer/i18n/pl.json b/public/app/footer/i18n/pl.json new file mode 100644 index 0000000..33723cd --- /dev/null +++ b/public/app/footer/i18n/pl.json @@ -0,0 +1,6 @@ +{ + "FOOTER": { + "ERRORS": {}, + "COOKIE_LAW": "Używamy plików cookie, aby zapewnić Ci jak najlepsze wrażenia. Przeczytaj naszą politykę dotyczącą plików cookie ." + } +} \ No newline at end of file diff --git a/public/app/footer/i18n/pt-PT.json b/public/app/footer/i18n/pt-PT.json new file mode 100644 index 0000000..bdb0629 --- /dev/null +++ b/public/app/footer/i18n/pt-PT.json @@ -0,0 +1,6 @@ +{ + "FOOTER": { + "ERRORS": {}, + "COOKIE_LAW": "Nós usamos cookies para lhe proporcionar a melhor experiência. Leia nossa política de cookies ." + } +} \ No newline at end of file diff --git a/public/app/footer/i18n/ru.json b/public/app/footer/i18n/ru.json new file mode 100644 index 0000000..988f191 --- /dev/null +++ b/public/app/footer/i18n/ru.json @@ -0,0 +1,6 @@ +{ + "FOOTER": { + "ERRORS": {}, + "COOKIE_LAW": "Мы используем файлы cookie, чтобы дать вам лучший опыт. Ознакомьтесь с нашей политикой cookie ." + } +} \ No newline at end of file diff --git a/public/app/footer/i18n/sv.json b/public/app/footer/i18n/sv.json new file mode 100644 index 0000000..43665e9 --- /dev/null +++ b/public/app/footer/i18n/sv.json @@ -0,0 +1,6 @@ +{ + "FOOTER": { + "ERRORS": {}, + "COOKIE_LAW": "Vi använder cookies för att ge dig den bästa upplevelsen. Läs vår cookie policy ." + } +} \ No newline at end of file diff --git a/public/app/footer/i18n/tr.json b/public/app/footer/i18n/tr.json new file mode 100644 index 0000000..030c817 --- /dev/null +++ b/public/app/footer/i18n/tr.json @@ -0,0 +1,6 @@ +{ + "FOOTER": { + "ERRORS": {}, + "COOKIE_LAW": "Size en iyi deneyimi sunmak için çerezleri kullanıyoruz. çerez politikamızı okuyun." + } +} \ No newline at end of file diff --git a/public/app/footer/i18n/zh-CN.json b/public/app/footer/i18n/zh-CN.json new file mode 100644 index 0000000..0cdb970 --- /dev/null +++ b/public/app/footer/i18n/zh-CN.json @@ -0,0 +1,6 @@ +{ + "FOOTER": { + "ERRORS": {}, + "COOKIE_LAW": "我们使用cookies来为您提供最佳体验。请阅读我们的 Cookie政策。" + } +} \ No newline at end of file diff --git a/public/app/footer/i18n/zh-TW.json b/public/app/footer/i18n/zh-TW.json new file mode 100644 index 0000000..0ed65a9 --- /dev/null +++ b/public/app/footer/i18n/zh-TW.json @@ -0,0 +1,6 @@ +{ + "FOOTER": { + "ERRORS": {}, + "COOKIE_LAW": "我們使用cookies來為您提供最佳體驗。請閱讀我們的 Cookie政策。" + } +} \ No newline at end of file diff --git a/public/app/main/apps/dashboards/i18n/da.json b/public/app/main/apps/dashboards/i18n/da.json index 014d7f5..6f0bf8c 100644 --- a/public/app/main/apps/dashboards/i18n/da.json +++ b/public/app/main/apps/dashboards/i18n/da.json @@ -246,6 +246,10 @@ "CHANNEL_QUEUE": "Kø", "CHANNEL_FROM": "Fra", "MARK_AS_UNREAD": "Marker som ulæst", - "SELECT_AGENT": "Vælg agent" + "SELECT_AGENT": "Vælg agent", + "READ": "Læs", + "SELECT_READ_UNREAD": "Vælg Læs / Ulæst", + "SELECT_SUBSTATUS": "Vælg Substatus", + "UNREAD": "Ulæst" } } \ No newline at end of file diff --git a/public/app/main/apps/dashboards/i18n/de.json b/public/app/main/apps/dashboards/i18n/de.json index d7bf1a5..24dd624 100644 --- a/public/app/main/apps/dashboards/i18n/de.json +++ b/public/app/main/apps/dashboards/i18n/de.json @@ -246,6 +246,10 @@ "CHANNEL_QUEUE": "Warteschlange", "CHANNEL_FROM": "Von", "MARK_AS_UNREAD": "als ungelesen markieren", - "SELECT_AGENT": "Wählen Sie den Agenten aus" + "SELECT_AGENT": "Wählen Sie den Agenten aus", + "READ": "Lesen", + "SELECT_READ_UNREAD": "Wählen Sie Lesen / Ungelesen", + "SELECT_SUBSTATUS": "Wählen Sie Substatus", + "UNREAD": "Ungelesen" } } \ No newline at end of file diff --git a/public/app/main/apps/dashboards/i18n/en.json b/public/app/main/apps/dashboards/i18n/en.json index ac6238c..112d1de 100644 --- a/public/app/main/apps/dashboards/i18n/en.json +++ b/public/app/main/apps/dashboards/i18n/en.json @@ -1,5 +1,9 @@ { "DASHBOARDS": { + "SELECT_SUBSTATUS": "Select Substatus", + "READ": "Read", + "UNREAD": "Unread", + "SELECT_READ_UNREAD": "Select Read/Unread", "SELECT_AGENT": "Select Agent", "MARK_AS_UNREAD": "Mark as unread", "FILTER_VOICE_QUEUES": "Filter Voice Queues", diff --git a/public/app/main/apps/dashboards/i18n/es.json b/public/app/main/apps/dashboards/i18n/es.json index fad14be..a008250 100644 --- a/public/app/main/apps/dashboards/i18n/es.json +++ b/public/app/main/apps/dashboards/i18n/es.json @@ -246,6 +246,10 @@ "CHANNEL_QUEUE": "Cola", "CHANNEL_FROM": "De", "MARK_AS_UNREAD": "marcar como no leído", - "SELECT_AGENT": "Seleccionar agente" + "SELECT_AGENT": "Seleccionar agente", + "READ": "Leer", + "SELECT_READ_UNREAD": "Seleccione Leer / No leído", + "SELECT_SUBSTATUS": "Seleccione Substatus", + "UNREAD": "No leído" } } \ No newline at end of file diff --git a/public/app/main/apps/dashboards/i18n/fa.json b/public/app/main/apps/dashboards/i18n/fa.json index 086809b..0224a2b 100644 --- a/public/app/main/apps/dashboards/i18n/fa.json +++ b/public/app/main/apps/dashboards/i18n/fa.json @@ -246,6 +246,10 @@ "CHANNEL_QUEUE": "صف", "CHANNEL_FROM": "از جانب", "MARK_AS_UNREAD": "به عنوان \"خوانده نشده\" علامت گذاری کن", - "SELECT_AGENT": "انتخاب نماینده" + "SELECT_AGENT": "انتخاب نماینده", + "READ": "خواندن", + "SELECT_READ_UNREAD": "خواندن / خوانده نشده را انتخاب کنید", + "SELECT_SUBSTATUS": "Substatus را انتخاب کنید", + "UNREAD": "خوانده نشده" } } \ No newline at end of file diff --git a/public/app/main/apps/dashboards/i18n/fi.json b/public/app/main/apps/dashboards/i18n/fi.json index 461114f..18fb8d5 100644 --- a/public/app/main/apps/dashboards/i18n/fi.json +++ b/public/app/main/apps/dashboards/i18n/fi.json @@ -246,6 +246,10 @@ "CHANNEL_QUEUE": "Jonottaa", "CHANNEL_FROM": "alkaen", "MARK_AS_UNREAD": "Merkitse lukemattomaksi", - "SELECT_AGENT": "Valitse Agent" + "SELECT_AGENT": "Valitse Agent", + "READ": "Lukea", + "SELECT_READ_UNREAD": "Valitse Lue / lukematon", + "SELECT_SUBSTATUS": "Valitse Substatus", + "UNREAD": "Lukemattomat" } } \ No newline at end of file diff --git a/public/app/main/apps/dashboards/i18n/fr.json b/public/app/main/apps/dashboards/i18n/fr.json index 70e3dfd..481e604 100644 --- a/public/app/main/apps/dashboards/i18n/fr.json +++ b/public/app/main/apps/dashboards/i18n/fr.json @@ -246,6 +246,10 @@ "CHANNEL_QUEUE": "Queue", "CHANNEL_FROM": "De", "MARK_AS_UNREAD": "marquer comme non lu", - "SELECT_AGENT": "Sélectionner un agent" + "SELECT_AGENT": "Sélectionner un agent", + "READ": "Lis", + "SELECT_READ_UNREAD": "Sélectionnez Lire / Non lu", + "SELECT_SUBSTATUS": "Choisir un sous-statut", + "UNREAD": "Non lu" } } \ No newline at end of file diff --git a/public/app/main/apps/dashboards/i18n/hi.json b/public/app/main/apps/dashboards/i18n/hi.json index 925a0e8..8f5c3e0 100644 --- a/public/app/main/apps/dashboards/i18n/hi.json +++ b/public/app/main/apps/dashboards/i18n/hi.json @@ -246,6 +246,10 @@ "CHANNEL_QUEUE": "कतार", "CHANNEL_FROM": "से", "MARK_AS_UNREAD": "अपठित के रूप में चिह्नित करें", - "SELECT_AGENT": "एजेंट चुनें" + "SELECT_AGENT": "एजेंट चुनें", + "READ": "पढ़ना", + "SELECT_READ_UNREAD": "पढ़ें / अपठित का चयन करें", + "SELECT_SUBSTATUS": "सबस्टैटस का चयन करें", + "UNREAD": "अपठित ग" } } \ No newline at end of file diff --git a/public/app/main/apps/dashboards/i18n/it.json b/public/app/main/apps/dashboards/i18n/it.json index fc4ebd6..0e3aaeb 100644 --- a/public/app/main/apps/dashboards/i18n/it.json +++ b/public/app/main/apps/dashboards/i18n/it.json @@ -1,5 +1,9 @@ { "DASHBOARDS": { + "SELECT_SUBSTATUS": "Seleziona Sotto Stato", + "READ": "Letto", + "UNREAD": "Non Letto", + "SELECT_READ_UNREAD": "Seleziona Letto/Non Letto", "SELECT_AGENT": "Seleaziona Agente", "MARK_AS_UNREAD": "Segna come non letta", "FILTER_VOICE_QUEUES": "Filtra Code Voce", diff --git a/public/app/main/apps/dashboards/i18n/ja.json b/public/app/main/apps/dashboards/i18n/ja.json index 0d8c755..1f7e82c 100644 --- a/public/app/main/apps/dashboards/i18n/ja.json +++ b/public/app/main/apps/dashboards/i18n/ja.json @@ -246,6 +246,10 @@ "CHANNEL_QUEUE": "キュー", "CHANNEL_FROM": "から", "MARK_AS_UNREAD": "未読としてマーク", - "SELECT_AGENT": "エージェントを選択" + "SELECT_AGENT": "エージェントを選択", + "READ": "読む", + "SELECT_READ_UNREAD": "読み取り/未読を選択", + "SELECT_SUBSTATUS": "サブ状態を選択", + "UNREAD": "未読" } } \ No newline at end of file diff --git a/public/app/main/apps/dashboards/i18n/ko.json b/public/app/main/apps/dashboards/i18n/ko.json index 4447527..19e3b44 100644 --- a/public/app/main/apps/dashboards/i18n/ko.json +++ b/public/app/main/apps/dashboards/i18n/ko.json @@ -246,6 +246,10 @@ "CHANNEL_QUEUE": "열", "CHANNEL_FROM": "에서", "MARK_AS_UNREAD": "읽지 않은 상태로 표시", - "SELECT_AGENT": "에이전트 선택" + "SELECT_AGENT": "에이전트 선택", + "READ": "독서", + "SELECT_READ_UNREAD": "읽기 / 읽지 않음 선택", + "SELECT_SUBSTATUS": "하위 상태 선택", + "UNREAD": "읽히지 않는" } } \ No newline at end of file diff --git a/public/app/main/apps/dashboards/i18n/lv.json b/public/app/main/apps/dashboards/i18n/lv.json index 094f820..58602c3 100644 --- a/public/app/main/apps/dashboards/i18n/lv.json +++ b/public/app/main/apps/dashboards/i18n/lv.json @@ -246,6 +246,10 @@ "CHANNEL_QUEUE": "Rinda", "CHANNEL_WAITING_TEXT": "Gaida rindas mijiedarbību", "MARK_AS_UNREAD": "atzīmēt kā nelasītu", - "SELECT_AGENT": "Izvēlieties aģentu" + "SELECT_AGENT": "Izvēlieties aģentu", + "READ": "Lasīt", + "SELECT_READ_UNREAD": "Atlasiet Lasīšana / nelasīti", + "SELECT_SUBSTATUS": "Izvēlieties substatus", + "UNREAD": "Nelasīts" } } \ No newline at end of file diff --git a/public/app/main/apps/dashboards/i18n/nl.json b/public/app/main/apps/dashboards/i18n/nl.json index 4c76943..0b6306a 100644 --- a/public/app/main/apps/dashboards/i18n/nl.json +++ b/public/app/main/apps/dashboards/i18n/nl.json @@ -246,6 +246,10 @@ "CHANNEL_QUEUE": "Wachtrij", "CHANNEL_FROM": "Van", "MARK_AS_UNREAD": "markeren als ongelezen", - "SELECT_AGENT": "Selecteer Agent" + "SELECT_AGENT": "Selecteer Agent", + "READ": "Lezen", + "SELECT_READ_UNREAD": "Selecteer Lezen / ongelezen", + "SELECT_SUBSTATUS": "Selecteer Substatus", + "UNREAD": "Ongelezen" } } \ No newline at end of file diff --git a/public/app/main/apps/dashboards/i18n/no.json b/public/app/main/apps/dashboards/i18n/no.json index fe3188f..80a21d1 100644 --- a/public/app/main/apps/dashboards/i18n/no.json +++ b/public/app/main/apps/dashboards/i18n/no.json @@ -246,6 +246,10 @@ "CHANNEL_QUEUE": "Kø", "CHANNEL_FROM": "Fra", "MARK_AS_UNREAD": "Merk som ulest", - "SELECT_AGENT": "Velg Agent" + "SELECT_AGENT": "Velg Agent", + "READ": "Lese", + "SELECT_READ_UNREAD": "Velg Les / ulest", + "SELECT_SUBSTATUS": "Velg Substatus", + "UNREAD": "ulest" } } \ No newline at end of file diff --git a/public/app/main/apps/dashboards/i18n/pl.json b/public/app/main/apps/dashboards/i18n/pl.json index 83fa521..0596499 100644 --- a/public/app/main/apps/dashboards/i18n/pl.json +++ b/public/app/main/apps/dashboards/i18n/pl.json @@ -246,6 +246,10 @@ "CHANNEL_QUEUE": "Kolejka", "CHANNEL_FROM": "Od", "MARK_AS_UNREAD": "Oznacz jako nieprzeczytane", - "SELECT_AGENT": "Wybierz agenta" + "SELECT_AGENT": "Wybierz agenta", + "READ": "Czytać", + "SELECT_READ_UNREAD": "Wybierz Odczyt / Nieprzeczytane", + "SELECT_SUBSTATUS": "Wybierz Substatus", + "UNREAD": "nieprzeczytane" } } \ No newline at end of file diff --git a/public/app/main/apps/dashboards/i18n/pt-PT.json b/public/app/main/apps/dashboards/i18n/pt-PT.json index 0e6dc0a..ff0cdd0 100644 --- a/public/app/main/apps/dashboards/i18n/pt-PT.json +++ b/public/app/main/apps/dashboards/i18n/pt-PT.json @@ -246,6 +246,10 @@ "CHANNEL_QUEUE": "Fila", "CHANNEL_FROM": "A partir de", "MARK_AS_UNREAD": "marcar como não lido", - "SELECT_AGENT": "Selecione o agente" + "SELECT_AGENT": "Selecione o agente", + "READ": "Ler", + "SELECT_READ_UNREAD": "Selecione Leitura / Não Lida", + "SELECT_SUBSTATUS": "Selecione Substatus", + "UNREAD": "Não lida" } } \ No newline at end of file diff --git a/public/app/main/apps/dashboards/i18n/ru.json b/public/app/main/apps/dashboards/i18n/ru.json index 4d696bd..bf9c54f 100644 --- a/public/app/main/apps/dashboards/i18n/ru.json +++ b/public/app/main/apps/dashboards/i18n/ru.json @@ -246,6 +246,10 @@ "CHANNEL_QUEUE": "Очередь", "CHANNEL_FROM": "Из", "MARK_AS_UNREAD": "Отметить как непрочитанное", - "SELECT_AGENT": "Выбрать агент" + "SELECT_AGENT": "Выбрать агент", + "READ": "Читать", + "SELECT_READ_UNREAD": "Выберите Чтение / Непрочитанное", + "SELECT_SUBSTATUS": "Выберите Substatus", + "UNREAD": "Не прочитано" } } \ No newline at end of file diff --git a/public/app/main/apps/dashboards/i18n/sv.json b/public/app/main/apps/dashboards/i18n/sv.json index d1f7145..bd95c36 100644 --- a/public/app/main/apps/dashboards/i18n/sv.json +++ b/public/app/main/apps/dashboards/i18n/sv.json @@ -246,6 +246,10 @@ "CHANNEL_QUEUE": "Kö", "CHANNEL_FROM": "Från", "MARK_AS_UNREAD": "markera som oläst", - "SELECT_AGENT": "Välj Agent" + "SELECT_AGENT": "Välj Agent", + "READ": "Läsa", + "SELECT_READ_UNREAD": "Välj Läs / Oläst", + "SELECT_SUBSTATUS": "Välj Substatus", + "UNREAD": "Oläst" } } \ No newline at end of file diff --git a/public/app/main/apps/dashboards/i18n/tr.json b/public/app/main/apps/dashboards/i18n/tr.json index dbaec27..8ce3be8 100644 --- a/public/app/main/apps/dashboards/i18n/tr.json +++ b/public/app/main/apps/dashboards/i18n/tr.json @@ -246,6 +246,10 @@ "CHANNEL_QUEUE": "kuyruk", "CHANNEL_FROM": "itibaren", "MARK_AS_UNREAD": "okunmamış olarak işaretle", - "SELECT_AGENT": "Ajan Seç" + "SELECT_AGENT": "Ajan Seç", + "READ": "okumak", + "SELECT_READ_UNREAD": "Oku / Okunmadı Seç", + "SELECT_SUBSTATUS": "Substatus'u seçin", + "UNREAD": "Okunmamış" } } \ No newline at end of file diff --git a/public/app/main/apps/dashboards/i18n/zh-CN.json b/public/app/main/apps/dashboards/i18n/zh-CN.json index 7067ffd..3c12f51 100644 --- a/public/app/main/apps/dashboards/i18n/zh-CN.json +++ b/public/app/main/apps/dashboards/i18n/zh-CN.json @@ -246,6 +246,10 @@ "CHANNEL_QUEUE": "队列", "CHANNEL_FROM": "从", "MARK_AS_UNREAD": "标记为未读", - "SELECT_AGENT": "选择代理" + "SELECT_AGENT": "选择代理", + "READ": "读", + "SELECT_READ_UNREAD": "选择读取/未读", + "SELECT_SUBSTATUS": "选择Substatus", + "UNREAD": "未读" } } \ No newline at end of file diff --git a/public/app/main/apps/dashboards/i18n/zh-TW.json b/public/app/main/apps/dashboards/i18n/zh-TW.json index f45f9cc..9359f6f 100644 --- a/public/app/main/apps/dashboards/i18n/zh-TW.json +++ b/public/app/main/apps/dashboards/i18n/zh-TW.json @@ -246,6 +246,10 @@ "CHANNEL_QUEUE": "隊列", "CHANNEL_FROM": "從", "MARK_AS_UNREAD": "標記為未讀", - "SELECT_AGENT": "選擇代理" + "SELECT_AGENT": "選擇代理", + "READ": "讀", + "SELECT_READ_UNREAD": "選擇讀取/未讀", + "SELECT_SUBSTATUS": "選擇Substatus", + "UNREAD": "未讀" } } \ No newline at end of file diff --git a/public/app/main/apps/mail/i18n/da.json b/public/app/main/apps/mail/i18n/da.json index 1066cbb..d7b9c23 100644 --- a/public/app/main/apps/mail/i18n/da.json +++ b/public/app/main/apps/mail/i18n/da.json @@ -262,6 +262,12 @@ "ACCEPTED": "Accepteret", "FONT_FAMILY": "Font Family", "FONT_SIZE": "Skriftstørrelse", - "MARK_AS_UNREAD": "Marker som ulæst" + "MARK_AS_UNREAD": "Marker som ulæst", + "ADD_MAILSUBSTATUS": "Tilføj Sub Status", + "DELETE_MAILSUBSTATUS": "Slet", + "EDIT_MAILSUBSTATUS": "Redigere", + "MAILSUBSTATUSES": "Email Sub-statusser", + "NEW_MAILSUBSTATUS": "Ny substatus", + "SEND_AS": "Send som" } } \ No newline at end of file diff --git a/public/app/main/apps/mail/i18n/de.json b/public/app/main/apps/mail/i18n/de.json index b9a90ff..7b5cf26 100644 --- a/public/app/main/apps/mail/i18n/de.json +++ b/public/app/main/apps/mail/i18n/de.json @@ -262,6 +262,12 @@ "ACCEPTED": "Akzeptiert", "FONT_FAMILY": "Schriftfamilie", "FONT_SIZE": "Schriftgröße", - "MARK_AS_UNREAD": "als ungelesen markieren" + "MARK_AS_UNREAD": "als ungelesen markieren", + "ADD_MAILSUBSTATUS": "Unterstatus hinzufügen", + "DELETE_MAILSUBSTATUS": "Löschen", + "EDIT_MAILSUBSTATUS": "Bearbeiten", + "MAILSUBSTATUSES": "E-Mail-Unterstatus", + "NEW_MAILSUBSTATUS": "Neuer Unterstatus", + "SEND_AS": "Senden Als" } } \ No newline at end of file diff --git a/public/app/main/apps/mail/i18n/en.json b/public/app/main/apps/mail/i18n/en.json index 65e6ff6..35a3f5f 100644 --- a/public/app/main/apps/mail/i18n/en.json +++ b/public/app/main/apps/mail/i18n/en.json @@ -1,5 +1,11 @@ { "MAIL": { + "SEND_AS": "Send as", + "NEW_MAILSUBSTATUS": "New Sub Status", + "ADD_MAILSUBSTATUS": "Add Sub Status", + "MAILSUBSTATUSES": "Email Sub Statuses", + "EDIT_MAILSUBSTATUS": "Edit", + "DELETE_MAILSUBSTATUS": "Delete", "FONT_FAMILY": "Font Family", "FONT_SIZE": "Font Size", "MARK_AS_UNREAD": "Mark as unread", diff --git a/public/app/main/apps/mail/i18n/es.json b/public/app/main/apps/mail/i18n/es.json index 752314b..f958ae4 100644 --- a/public/app/main/apps/mail/i18n/es.json +++ b/public/app/main/apps/mail/i18n/es.json @@ -262,6 +262,12 @@ "ACCEPTED": "Aceptado", "FONT_FAMILY": "Familia tipográfica", "FONT_SIZE": "Tamaño de fuente", - "MARK_AS_UNREAD": "marcar como no leído" + "MARK_AS_UNREAD": "marcar como no leído", + "ADD_MAILSUBSTATUS": "Agregar sub estado", + "DELETE_MAILSUBSTATUS": "Borrar", + "EDIT_MAILSUBSTATUS": "Editar", + "MAILSUBSTATUSES": "Subestaciones de correo electrónico", + "NEW_MAILSUBSTATUS": "Nuevo Sub Status", + "SEND_AS": "Enviar como" } } \ No newline at end of file diff --git a/public/app/main/apps/mail/i18n/fa.json b/public/app/main/apps/mail/i18n/fa.json index e529a93..6b0cddb 100644 --- a/public/app/main/apps/mail/i18n/fa.json +++ b/public/app/main/apps/mail/i18n/fa.json @@ -262,6 +262,12 @@ "ACCEPTED": "پذیرفته شده", "FONT_FAMILY": "خانواده فونت", "FONT_SIZE": "اندازه فونت", - "MARK_AS_UNREAD": "به عنوان \"خوانده نشده\" علامت گذاری کن" + "MARK_AS_UNREAD": "به عنوان \"خوانده نشده\" علامت گذاری کن", + "ADD_MAILSUBSTATUS": "اضافه کردن وضعیت زیر", + "DELETE_MAILSUBSTATUS": "حذف", + "EDIT_MAILSUBSTATUS": "ویرایش", + "MAILSUBSTATUSES": "پست های پست الکترونیکی", + "NEW_MAILSUBSTATUS": "وضعیت جدید جدید", + "SEND_AS": "ارسال به عنوان" } } \ No newline at end of file diff --git a/public/app/main/apps/mail/i18n/fi.json b/public/app/main/apps/mail/i18n/fi.json index b9e532d..ec8583a 100644 --- a/public/app/main/apps/mail/i18n/fi.json +++ b/public/app/main/apps/mail/i18n/fi.json @@ -262,6 +262,12 @@ "ACCEPTED": "Hyväksytyt", "FONT_FAMILY": "Fonttiperhe", "FONT_SIZE": "Fonttikoko", - "MARK_AS_UNREAD": "Merkitse lukemattomaksi" + "MARK_AS_UNREAD": "Merkitse lukemattomaksi", + "ADD_MAILSUBSTATUS": "Lisää ala-tila", + "DELETE_MAILSUBSTATUS": "Poistaa", + "EDIT_MAILSUBSTATUS": "Muokata", + "MAILSUBSTATUSES": "Sähköpostiosaston tilat", + "NEW_MAILSUBSTATUS": "Uusi alitila", + "SEND_AS": "Lähetä kuten" } } \ No newline at end of file diff --git a/public/app/main/apps/mail/i18n/fr.json b/public/app/main/apps/mail/i18n/fr.json index e550a90..247fadf 100644 --- a/public/app/main/apps/mail/i18n/fr.json +++ b/public/app/main/apps/mail/i18n/fr.json @@ -262,6 +262,12 @@ "ACCEPTED": "Accepté", "FONT_FAMILY": "Famille de polices", "FONT_SIZE": "Taille de police", - "MARK_AS_UNREAD": "marquer comme non lu" + "MARK_AS_UNREAD": "marquer comme non lu", + "ADD_MAILSUBSTATUS": "Ajouter un statut secondaire", + "DELETE_MAILSUBSTATUS": "Effacer", + "EDIT_MAILSUBSTATUS": "modifier", + "MAILSUBSTATUSES": "Email Sous Statuts", + "NEW_MAILSUBSTATUS": "Nouveau sous-statut", + "SEND_AS": "Envoyer comme" } } \ No newline at end of file diff --git a/public/app/main/apps/mail/i18n/hi.json b/public/app/main/apps/mail/i18n/hi.json index bd50986..4165f7f 100644 --- a/public/app/main/apps/mail/i18n/hi.json +++ b/public/app/main/apps/mail/i18n/hi.json @@ -262,6 +262,12 @@ "ACCEPTED": "स्वीकार किए जाते हैं", "FONT_FAMILY": "फ़ॉन्ट परिवार", "FONT_SIZE": "फ़ॉन्ट आकार", - "MARK_AS_UNREAD": "अपठित के रूप में चिह्नित करें" + "MARK_AS_UNREAD": "अपठित के रूप में चिह्नित करें", + "ADD_MAILSUBSTATUS": "उप स्थिति जोड़ें", + "DELETE_MAILSUBSTATUS": "हटाना", + "EDIT_MAILSUBSTATUS": "संपादित करें", + "MAILSUBSTATUSES": "ईमेल उप स्थिति", + "NEW_MAILSUBSTATUS": "नई उप स्थिति", + "SEND_AS": "इस रूप में भेजें" } } \ No newline at end of file diff --git a/public/app/main/apps/mail/i18n/it.json b/public/app/main/apps/mail/i18n/it.json index 8accafc..3d25be7 100644 --- a/public/app/main/apps/mail/i18n/it.json +++ b/public/app/main/apps/mail/i18n/it.json @@ -1,5 +1,11 @@ { "MAIL": { + "SEND_AS": "Invia in", + "NEW_MAILSUBSTATUS": "Nuovo Sotto Stato", + "ADD_MAILSUBSTATUS": "Aggiungi Sotto Stato", + "MAILSUBSTATUSES": "Sotto Stati Email", + "EDIT_MAILSUBSTATUS": "Modifica", + "DELETE_MAILSUBSTATUS": "Elimina", "FONT_FAMILY": "Famiglia dei caratteri", "FONT_SIZE": "Dimensione dei caratteri", "MARK_AS_UNREAD": "Segna come non letto", diff --git a/public/app/main/apps/mail/i18n/ja.json b/public/app/main/apps/mail/i18n/ja.json index 39f1856..e9a9b5d 100644 --- a/public/app/main/apps/mail/i18n/ja.json +++ b/public/app/main/apps/mail/i18n/ja.json @@ -262,6 +262,12 @@ "ACCEPTED": "受け入れられた", "FONT_FAMILY": "フォントファミリー", "FONT_SIZE": "フォントサイズ", - "MARK_AS_UNREAD": "未読としてマーク" + "MARK_AS_UNREAD": "未読としてマーク", + "ADD_MAILSUBSTATUS": "サブステータスを追加", + "DELETE_MAILSUBSTATUS": "削除", + "EDIT_MAILSUBSTATUS": "編集", + "MAILSUBSTATUSES": "メールのサブステータス", + "NEW_MAILSUBSTATUS": "新しいサブステータス", + "SEND_AS": "別名で送信" } } \ No newline at end of file diff --git a/public/app/main/apps/mail/i18n/ko.json b/public/app/main/apps/mail/i18n/ko.json index 450cede..373a6fa 100644 --- a/public/app/main/apps/mail/i18n/ko.json +++ b/public/app/main/apps/mail/i18n/ko.json @@ -262,6 +262,12 @@ "ACCEPTED": "수락 됨", "FONT_FAMILY": "글꼴 모음", "FONT_SIZE": "글자 크기", - "MARK_AS_UNREAD": "읽지 않은 상태로 표시" + "MARK_AS_UNREAD": "읽지 않은 상태로 표시", + "ADD_MAILSUBSTATUS": "하위 상태 추가", + "DELETE_MAILSUBSTATUS": "지우다", + "EDIT_MAILSUBSTATUS": "편집하다", + "MAILSUBSTATUSES": "이메일 하위 상태", + "NEW_MAILSUBSTATUS": "새 하위 상태", + "SEND_AS": "다음으로 보내기 :" } } \ No newline at end of file diff --git a/public/app/main/apps/mail/i18n/lv.json b/public/app/main/apps/mail/i18n/lv.json index 1a4859f..97426cb 100644 --- a/public/app/main/apps/mail/i18n/lv.json +++ b/public/app/main/apps/mail/i18n/lv.json @@ -262,6 +262,12 @@ "ACCEPTED": "Pieņemts", "FONT_FAMILY": "Fontu ģimene", "FONT_SIZE": "Fonta izmērs", - "MARK_AS_UNREAD": "atzīmēt kā nelasītu" + "MARK_AS_UNREAD": "atzīmēt kā nelasītu", + "ADD_MAILSUBSTATUS": "Pievienot apakšs statuss", + "DELETE_MAILSUBSTATUS": "Dzēst", + "EDIT_MAILSUBSTATUS": "Rediģēt", + "MAILSUBSTATUSES": "E-pasta apakšs statuss", + "NEW_MAILSUBSTATUS": "Jauns sub statuss", + "SEND_AS": "Sūtīt kā" } } \ No newline at end of file diff --git a/public/app/main/apps/mail/i18n/nl.json b/public/app/main/apps/mail/i18n/nl.json index f925f88..63ce951 100644 --- a/public/app/main/apps/mail/i18n/nl.json +++ b/public/app/main/apps/mail/i18n/nl.json @@ -262,6 +262,12 @@ "ACCEPTED": "Aanvaard", "FONT_FAMILY": "Font familie", "FONT_SIZE": "Lettertypegrootte", - "MARK_AS_UNREAD": "markeren als ongelezen" + "MARK_AS_UNREAD": "markeren als ongelezen", + "ADD_MAILSUBSTATUS": "Substatus toevoegen", + "DELETE_MAILSUBSTATUS": "Verwijder", + "EDIT_MAILSUBSTATUS": "Bewerk", + "MAILSUBSTATUSES": "E-mail substatussen", + "NEW_MAILSUBSTATUS": "Nieuwe substatus", + "SEND_AS": "Versturen als" } } \ No newline at end of file diff --git a/public/app/main/apps/mail/i18n/no.json b/public/app/main/apps/mail/i18n/no.json index 1804b49..57b6cfe 100644 --- a/public/app/main/apps/mail/i18n/no.json +++ b/public/app/main/apps/mail/i18n/no.json @@ -262,6 +262,12 @@ "ACCEPTED": "Akseptert", "FONT_FAMILY": "Font Family", "FONT_SIZE": "Skriftstørrelse", - "MARK_AS_UNREAD": "Merk som ulest" + "MARK_AS_UNREAD": "Merk som ulest", + "ADD_MAILSUBSTATUS": "Legg til understatus", + "DELETE_MAILSUBSTATUS": "Slett", + "EDIT_MAILSUBSTATUS": "Redigere", + "MAILSUBSTATUSES": "E-postadressestatuser", + "NEW_MAILSUBSTATUS": "Ny substatus", + "SEND_AS": "Send som" } } \ No newline at end of file diff --git a/public/app/main/apps/mail/i18n/pl.json b/public/app/main/apps/mail/i18n/pl.json index 8b077ec..00c4301 100644 --- a/public/app/main/apps/mail/i18n/pl.json +++ b/public/app/main/apps/mail/i18n/pl.json @@ -262,6 +262,12 @@ "ACCEPTED": "Przyjęty", "FONT_FAMILY": "Rodzina czcionek", "FONT_SIZE": "Rozmiar czcionki", - "MARK_AS_UNREAD": "Oznacz jako nieprzeczytane" + "MARK_AS_UNREAD": "Oznacz jako nieprzeczytane", + "ADD_MAILSUBSTATUS": "Dodaj status podrzędny", + "DELETE_MAILSUBSTATUS": "Kasować", + "EDIT_MAILSUBSTATUS": "Edytować", + "MAILSUBSTATUSES": "Subskrypcje wiadomości e-mail", + "NEW_MAILSUBSTATUS": "Nowy status podrzędny", + "SEND_AS": "Wyślij jako" } } \ No newline at end of file diff --git a/public/app/main/apps/mail/i18n/pt-PT.json b/public/app/main/apps/mail/i18n/pt-PT.json index 3a572b1..0e08742 100644 --- a/public/app/main/apps/mail/i18n/pt-PT.json +++ b/public/app/main/apps/mail/i18n/pt-PT.json @@ -262,6 +262,12 @@ "ACCEPTED": "Aceitaram", "FONT_FAMILY": "Família de fontes", "FONT_SIZE": "Tamanho da fonte", - "MARK_AS_UNREAD": "marcar como não lido" + "MARK_AS_UNREAD": "marcar como não lido", + "ADD_MAILSUBSTATUS": "Adicionar status de sub", + "DELETE_MAILSUBSTATUS": "Excluir", + "EDIT_MAILSUBSTATUS": "Editar", + "MAILSUBSTATUSES": "Sub-status de e-mail", + "NEW_MAILSUBSTATUS": "Novo sub status", + "SEND_AS": "Enviar como" } } \ No newline at end of file diff --git a/public/app/main/apps/mail/i18n/ru.json b/public/app/main/apps/mail/i18n/ru.json index 27fc1db..2b8649f 100644 --- a/public/app/main/apps/mail/i18n/ru.json +++ b/public/app/main/apps/mail/i18n/ru.json @@ -262,6 +262,12 @@ "ACCEPTED": "Принято", "FONT_FAMILY": "Семейство шрифтов", "FONT_SIZE": "Размер шрифта", - "MARK_AS_UNREAD": "Отметить как непрочитанное" + "MARK_AS_UNREAD": "Отметить как непрочитанное", + "ADD_MAILSUBSTATUS": "Добавить дополнительный статус", + "DELETE_MAILSUBSTATUS": "Удалить", + "EDIT_MAILSUBSTATUS": "редактировать", + "MAILSUBSTATUSES": "Подкатегории электронной почты", + "NEW_MAILSUBSTATUS": "Новый подчиненный статус", + "SEND_AS": "Отправить как" } } \ No newline at end of file diff --git a/public/app/main/apps/mail/i18n/sv.json b/public/app/main/apps/mail/i18n/sv.json index 2c57100..b513c0d 100644 --- a/public/app/main/apps/mail/i18n/sv.json +++ b/public/app/main/apps/mail/i18n/sv.json @@ -262,6 +262,12 @@ "ACCEPTED": "Accepterad", "FONT_FAMILY": "Typsnittsfamilj", "FONT_SIZE": "Textstorlek", - "MARK_AS_UNREAD": "markera som oläst" + "MARK_AS_UNREAD": "markera som oläst", + "ADD_MAILSUBSTATUS": "Lägg till substatus", + "DELETE_MAILSUBSTATUS": "Radera", + "EDIT_MAILSUBSTATUS": "Redigera", + "MAILSUBSTATUSES": "E-postadresser", + "NEW_MAILSUBSTATUS": "Ny substatus", + "SEND_AS": "Skicka som" } } \ No newline at end of file diff --git a/public/app/main/apps/mail/i18n/tr.json b/public/app/main/apps/mail/i18n/tr.json index adcd23f..d398106 100644 --- a/public/app/main/apps/mail/i18n/tr.json +++ b/public/app/main/apps/mail/i18n/tr.json @@ -262,6 +262,12 @@ "ACCEPTED": "Kabul edilmiş", "FONT_FAMILY": "Font ailesi", "FONT_SIZE": "Yazı Boyutu", - "MARK_AS_UNREAD": "okunmamış olarak işaretle" + "MARK_AS_UNREAD": "okunmamış olarak işaretle", + "ADD_MAILSUBSTATUS": "Alt Durum Ekle", + "DELETE_MAILSUBSTATUS": "silmek", + "EDIT_MAILSUBSTATUS": "Düzenle", + "MAILSUBSTATUSES": "E-posta Alt Durumları", + "NEW_MAILSUBSTATUS": "Yeni Alt Durum", + "SEND_AS": "Farklı gönder" } } \ No newline at end of file diff --git a/public/app/main/apps/mail/i18n/zh-CN.json b/public/app/main/apps/mail/i18n/zh-CN.json index d43c3a9..6876e01 100644 --- a/public/app/main/apps/mail/i18n/zh-CN.json +++ b/public/app/main/apps/mail/i18n/zh-CN.json @@ -262,6 +262,12 @@ "ACCEPTED": "公认", "FONT_FAMILY": "字体系列", "FONT_SIZE": "字体大小", - "MARK_AS_UNREAD": "标记为未读" + "MARK_AS_UNREAD": "标记为未读", + "ADD_MAILSUBSTATUS": "添加小组状态", + "DELETE_MAILSUBSTATUS": "删除", + "EDIT_MAILSUBSTATUS": "编辑", + "MAILSUBSTATUSES": "电子邮件子状态", + "NEW_MAILSUBSTATUS": "新的子状态", + "SEND_AS": "发送为" } } \ No newline at end of file diff --git a/public/app/main/apps/mail/i18n/zh-TW.json b/public/app/main/apps/mail/i18n/zh-TW.json index 478fd51..af2b011 100644 --- a/public/app/main/apps/mail/i18n/zh-TW.json +++ b/public/app/main/apps/mail/i18n/zh-TW.json @@ -262,6 +262,12 @@ "ACCEPTED": "公認", "FONT_FAMILY": "字體系列", "FONT_SIZE": "字體大小", - "MARK_AS_UNREAD": "標記為未讀" + "MARK_AS_UNREAD": "標記為未讀", + "ADD_MAILSUBSTATUS": "添加小組狀態", + "DELETE_MAILSUBSTATUS": "刪除", + "EDIT_MAILSUBSTATUS": "編輯", + "MAILSUBSTATUSES": "電子郵件子狀態", + "NEW_MAILSUBSTATUS": "新的子狀態", + "SEND_AS": "發送為" } } \ No newline at end of file diff --git a/public/app/main/apps/sms/i18n/da.json b/public/app/main/apps/sms/i18n/da.json index b9173da..1095314 100644 --- a/public/app/main/apps/sms/i18n/da.json +++ b/public/app/main/apps/sms/i18n/da.json @@ -39,7 +39,8 @@ "VALUE_REQUIRED": "Obligatorisk felt", "SENDERSTRING_MAX_LENGTH": "Værdien skal have en maksimal længde svarende til {{max}}", "SENDERSTRING_MUST_VALID_PATTERN": "Forkert format", - "METHOD_REQUIRED": "Obligatorisk felt" + "METHOD_REQUIRED": "Obligatorisk felt", + "AUTHID_REQUIRED": "Obligatorisk felt" }, "AGENT_TIMEOUT": "Agent Timeout", "DESCRIPTION": "Beskrivelse", @@ -216,6 +217,7 @@ "TIMES": "Antal gange pr. Interaktion", "TEXT": "Tekst", "INSERT_MESSAGE_HERE": "Indsæt din tekstbesked her", - "DELETE_INTERACTION": "Slet interaktion" + "DELETE_INTERACTION": "Slet interaktion", + "AUTHID": "Auth ID" } } \ No newline at end of file diff --git a/public/app/main/apps/sms/i18n/de.json b/public/app/main/apps/sms/i18n/de.json index ffc23a3..5797519 100644 --- a/public/app/main/apps/sms/i18n/de.json +++ b/public/app/main/apps/sms/i18n/de.json @@ -39,7 +39,8 @@ "VALUE_REQUIRED": "Pflichtfeld", "SENDERSTRING_MAX_LENGTH": "Der Wert muss eine maximale Länge von {{max}} haben", "SENDERSTRING_MUST_VALID_PATTERN": "Falsches Format", - "METHOD_REQUIRED": "Pflichtfeld" + "METHOD_REQUIRED": "Pflichtfeld", + "AUTHID_REQUIRED": "Pflichtfeld" }, "AGENT_TIMEOUT": "Agent Timeout", "DESCRIPTION": "Beschreibung", @@ -216,6 +217,7 @@ "TIMES": "Anzahl der Male pro Interaktion", "TEXT": "Text", "INSERT_MESSAGE_HERE": "Fügen Sie hier Ihre Textnachricht ein", - "DELETE_INTERACTION": "Interaktion löschen" + "DELETE_INTERACTION": "Interaktion löschen", + "AUTHID": "Authentifizierungs-ID" } } \ No newline at end of file diff --git a/public/app/main/apps/sms/i18n/en.json b/public/app/main/apps/sms/i18n/en.json index 5bd58f4..3f9809f 100644 --- a/public/app/main/apps/sms/i18n/en.json +++ b/public/app/main/apps/sms/i18n/en.json @@ -1,5 +1,6 @@ { "SMS": { + "AUTHID": "Auth ID", "NO_SMSDISPOSITIONS_AVAILABLE": "No Sms Disposition Available", "CANNEDANSWERS": "Canned Anwsers", "SMSCANNEDANSWERS": "Canned Anwsers", @@ -44,6 +45,7 @@ "SEARCH_FOR_ANYONE": "Search for anyone", "STRATEGY": "Strategy", "ERRORS": { + "AUTHID_REQUIRED": "Mandatory Field", "TEXT_MAX_LENGTH": "The value must have a maximum length equal to {{max}}", "TEXT_REQUIRED": "Mandatory Field", "VALUE_REQUIRED": "Mandatory Field", diff --git a/public/app/main/apps/sms/i18n/es.json b/public/app/main/apps/sms/i18n/es.json index b4b5d40..832fa7a 100644 --- a/public/app/main/apps/sms/i18n/es.json +++ b/public/app/main/apps/sms/i18n/es.json @@ -39,7 +39,8 @@ "VALUE_REQUIRED": "Campo obligatorio", "SENDERSTRING_MAX_LENGTH": "El valor debe tener una longitud máxima igual a {{max}}", "SENDERSTRING_MUST_VALID_PATTERN": "Formato erróneo", - "METHOD_REQUIRED": "Campo obligatorio" + "METHOD_REQUIRED": "Campo obligatorio", + "AUTHID_REQUIRED": "Campo obligatorio" }, "AGENT_TIMEOUT": "Tiempo de espera del agente", "DESCRIPTION": "Descripción", @@ -216,6 +217,7 @@ "TIMES": "Cantidad de veces por interacción", "TEXT": "Texto", "INSERT_MESSAGE_HERE": "Inserta tu mensaje de texto aquí", - "DELETE_INTERACTION": "Eliminar interacción" + "DELETE_INTERACTION": "Eliminar interacción", + "AUTHID": "ID de autenticación" } } \ No newline at end of file diff --git a/public/app/main/apps/sms/i18n/fa.json b/public/app/main/apps/sms/i18n/fa.json index a7d9959..0e02750 100644 --- a/public/app/main/apps/sms/i18n/fa.json +++ b/public/app/main/apps/sms/i18n/fa.json @@ -39,7 +39,8 @@ "VALUE_REQUIRED": "زمینه اجباری", "SENDERSTRING_MAX_LENGTH": "مقدار باید طول حداکثر {{حداکثر}} باشد", "SENDERSTRING_MUST_VALID_PATTERN": "فرمت اشتباه", - "METHOD_REQUIRED": "زمینه اجباری" + "METHOD_REQUIRED": "زمینه اجباری", + "AUTHID_REQUIRED": "زمینه اجباری" }, "AGENT_TIMEOUT": "عامل زمان مجاز", "DESCRIPTION": "شرح", @@ -216,6 +217,7 @@ "TIMES": "تعداد دفعات در هر تعامل", "TEXT": "متن", "INSERT_MESSAGE_HERE": "پیام متن خود را در اینجا قرار دهید", - "DELETE_INTERACTION": "حذف تعامل" + "DELETE_INTERACTION": "حذف تعامل", + "AUTHID": "ID Auth" } } \ No newline at end of file diff --git a/public/app/main/apps/sms/i18n/fi.json b/public/app/main/apps/sms/i18n/fi.json index 6d2dcb6..edafde6 100644 --- a/public/app/main/apps/sms/i18n/fi.json +++ b/public/app/main/apps/sms/i18n/fi.json @@ -39,7 +39,8 @@ "VALUE_REQUIRED": "Pakollinen kenttä", "SENDERSTRING_MAX_LENGTH": "Arvon enimmäispituus on {{max}}", "SENDERSTRING_MUST_VALID_PATTERN": "Väärä formaatti", - "METHOD_REQUIRED": "Pakollinen kenttä" + "METHOD_REQUIRED": "Pakollinen kenttä", + "AUTHID_REQUIRED": "Pakollinen kenttä" }, "AGENT_TIMEOUT": "Agentti aikakatkaisu", "DESCRIPTION": "Kuvaus", @@ -216,6 +217,7 @@ "TIMES": "Vuorovaikutuksen määrä", "TEXT": "Teksti", "INSERT_MESSAGE_HERE": "Lisää tekstiviesti tänne", - "DELETE_INTERACTION": "Poista vuorovaikutus" + "DELETE_INTERACTION": "Poista vuorovaikutus", + "AUTHID": "Auth ID" } } \ No newline at end of file diff --git a/public/app/main/apps/sms/i18n/fr.json b/public/app/main/apps/sms/i18n/fr.json index cdd00b8..b73b8ea 100644 --- a/public/app/main/apps/sms/i18n/fr.json +++ b/public/app/main/apps/sms/i18n/fr.json @@ -39,7 +39,8 @@ "VALUE_REQUIRED": "Champ obligatoire", "SENDERSTRING_MAX_LENGTH": "La valeur doit avoir une longueur maximale égale à {{max}}", "SENDERSTRING_MUST_VALID_PATTERN": "Mauvais format", - "METHOD_REQUIRED": "Champ obligatoire" + "METHOD_REQUIRED": "Champ obligatoire", + "AUTHID_REQUIRED": "Champ obligatoire" }, "AGENT_TIMEOUT": "Délai d'agent", "DESCRIPTION": "Description", @@ -216,6 +217,7 @@ "TIMES": "Nombre de fois par interaction", "TEXT": "Texte", "INSERT_MESSAGE_HERE": "Insérez votre message texte ici", - "DELETE_INTERACTION": "Supprimer l'interaction" + "DELETE_INTERACTION": "Supprimer l'interaction", + "AUTHID": "Authentification" } } \ No newline at end of file diff --git a/public/app/main/apps/sms/i18n/hi.json b/public/app/main/apps/sms/i18n/hi.json index 130a42b..d3e897f 100644 --- a/public/app/main/apps/sms/i18n/hi.json +++ b/public/app/main/apps/sms/i18n/hi.json @@ -39,7 +39,8 @@ "VALUE_REQUIRED": "आवश्यक स्थान", "SENDERSTRING_MAX_LENGTH": "मान {{अधिकतम}} के बराबर अधिकतम लंबाई होना चाहिए", "SENDERSTRING_MUST_VALID_PATTERN": "गलत प्रारूप", - "METHOD_REQUIRED": "आवश्यक स्थान" + "METHOD_REQUIRED": "आवश्यक स्थान", + "AUTHID_REQUIRED": "आवश्यक स्थान" }, "AGENT_TIMEOUT": "एजेंट समयबाह्य", "DESCRIPTION": "वर्णन", @@ -216,6 +217,7 @@ "TIMES": "इंटरैक्शन प्रति बार की संख्या", "TEXT": "टेक्स्ट", "INSERT_MESSAGE_HERE": "यहां अपना टेक्स्ट संदेश डालें", - "DELETE_INTERACTION": "इंटरैक्शन हटाएं" + "DELETE_INTERACTION": "इंटरैक्शन हटाएं", + "AUTHID": "ऑथ आईडी" } } \ No newline at end of file diff --git a/public/app/main/apps/sms/i18n/it.json b/public/app/main/apps/sms/i18n/it.json index fc8e981..1214bfe 100644 --- a/public/app/main/apps/sms/i18n/it.json +++ b/public/app/main/apps/sms/i18n/it.json @@ -1,5 +1,6 @@ { "SMS": { + "AUTHID": "Auth ID", "CANNEDANSWERS": "Canned Anwsers", "SMSCANNEDANSWERS": "Canned Anwsers", "NO_SMSCANNEDANSWER_AVAILABLE": "Nessuna Canned Answers Disponibile", @@ -43,6 +44,7 @@ "SEARCH_FOR_ANYONE": "Cerca", "STRATEGY": "Strategia", "ERRORS": { + "AUTHID_REQUIRED": "Campo Obbligatorio", "TEXT_MAX_LENGTH": "Il valore deve avere una lunghezza massima pari a {{max}}", "TEXT_REQUIRED": "Campo obbligatorio", "VALUE_REQUIRED": "Campo Obbligatorio", diff --git a/public/app/main/apps/sms/i18n/ja.json b/public/app/main/apps/sms/i18n/ja.json index f95ff98..ed7be24 100644 --- a/public/app/main/apps/sms/i18n/ja.json +++ b/public/app/main/apps/sms/i18n/ja.json @@ -39,7 +39,8 @@ "VALUE_REQUIRED": "必須フィールド", "SENDERSTRING_MAX_LENGTH": "値の最大長は{{max}}に等しくなければなりません", "SENDERSTRING_MUST_VALID_PATTERN": "間違ったフォーマット", - "METHOD_REQUIRED": "必須フィールド" + "METHOD_REQUIRED": "必須フィールド", + "AUTHID_REQUIRED": "必須フィールド" }, "AGENT_TIMEOUT": "エージェントのタイムアウト", "DESCRIPTION": "説明", @@ -216,6 +217,7 @@ "TIMES": "インタラクションあたりの回数", "TEXT": "テキスト", "INSERT_MESSAGE_HERE": "あなたのテキストメッセージをここに挿入してください", - "DELETE_INTERACTION": "インタラクションの削除" + "DELETE_INTERACTION": "インタラクションの削除", + "AUTHID": "認証ID" } } \ No newline at end of file diff --git a/public/app/main/apps/sms/i18n/ko.json b/public/app/main/apps/sms/i18n/ko.json index 788ada3..7f8363b 100644 --- a/public/app/main/apps/sms/i18n/ko.json +++ b/public/app/main/apps/sms/i18n/ko.json @@ -39,7 +39,8 @@ "VALUE_REQUIRED": "필수 필드", "SENDERSTRING_MAX_LENGTH": "값의 최대 길이는 {{max}}와 같아야합니다.", "SENDERSTRING_MUST_VALID_PATTERN": "잘못된 형식", - "METHOD_REQUIRED": "필수 필드" + "METHOD_REQUIRED": "필수 필드", + "AUTHID_REQUIRED": "필수 필드" }, "AGENT_TIMEOUT": "상담원 시간 초과", "DESCRIPTION": "설명", @@ -216,6 +217,7 @@ "TIMES": "상호 작용 당 횟수", "TEXT": "본문", "INSERT_MESSAGE_HERE": "여기에 문자 메시지를 삽입하십시오.", - "DELETE_INTERACTION": "상호 작용 삭제" + "DELETE_INTERACTION": "상호 작용 삭제", + "AUTHID": "인증 ID" } } \ No newline at end of file diff --git a/public/app/main/apps/sms/i18n/lv.json b/public/app/main/apps/sms/i18n/lv.json index e4ba653..9524b5a 100644 --- a/public/app/main/apps/sms/i18n/lv.json +++ b/public/app/main/apps/sms/i18n/lv.json @@ -34,7 +34,8 @@ "QUEUE_REQUIRED": "Obligāts lauks", "DISPOSITION_REQUIRED": "Obligāts lauks", "ACCOUNTSID_REQUIRED": "Obligāts lauks", - "AUTHTOKEN_REQUIRED": "Obligāts lauks" + "AUTHTOKEN_REQUIRED": "Obligāts lauks", + "AUTHID_REQUIRED": "Obligāts lauks" }, "HELP": { "MOTIONPROXY": "Laukumam jābūt šādam formātam: : // [: ]. Piemērs: https: // X.Y.Z.W", @@ -216,6 +217,7 @@ "AGENTSADD_QUEUE": "Pievienojiet aģentus SMS rindai", "INTERACTIONS_SMSACCOUNT": "Iet uz mijiedarbību", "REFRESH_INTERACTIONS": "Atsvaidziniet mijiedarbību", - "DELETE_INTERACTION": "Dzēst mijiedarbību" + "DELETE_INTERACTION": "Dzēst mijiedarbību", + "AUTHID": "Auth ID" } } \ No newline at end of file diff --git a/public/app/main/apps/sms/i18n/nl.json b/public/app/main/apps/sms/i18n/nl.json index bd9d724..ac97432 100644 --- a/public/app/main/apps/sms/i18n/nl.json +++ b/public/app/main/apps/sms/i18n/nl.json @@ -39,7 +39,8 @@ "VALUE_REQUIRED": "Verplicht veld", "SENDERSTRING_MAX_LENGTH": "De waarde moet een maximale lengte hebben die gelijk is aan {{max}}", "SENDERSTRING_MUST_VALID_PATTERN": "Verkeerd formaat", - "METHOD_REQUIRED": "Verplicht veld" + "METHOD_REQUIRED": "Verplicht veld", + "AUTHID_REQUIRED": "Verplicht veld" }, "AGENT_TIMEOUT": "Time-out agent", "DESCRIPTION": "Beschrijving", @@ -216,6 +217,7 @@ "TIMES": "Aantal keren per interactie", "TEXT": "Tekst", "INSERT_MESSAGE_HERE": "Voer hier uw sms-bericht in", - "DELETE_INTERACTION": "Interactie verwijderen" + "DELETE_INTERACTION": "Interactie verwijderen", + "AUTHID": "Auth ID" } } \ No newline at end of file diff --git a/public/app/main/apps/sms/i18n/no.json b/public/app/main/apps/sms/i18n/no.json index 5fb004d..55a695e 100644 --- a/public/app/main/apps/sms/i18n/no.json +++ b/public/app/main/apps/sms/i18n/no.json @@ -39,7 +39,8 @@ "VALUE_REQUIRED": "Obligatoriske felt", "SENDERSTRING_MAX_LENGTH": "Verdien må ha en maksimal lengde lik {{max}}", "SENDERSTRING_MUST_VALID_PATTERN": "Feil format", - "METHOD_REQUIRED": "Obligatoriske felt" + "METHOD_REQUIRED": "Obligatoriske felt", + "AUTHID_REQUIRED": "Obligatoriske felt" }, "AGENT_TIMEOUT": "Agent tidsavbrudd", "DESCRIPTION": "Beskrivelse", @@ -216,6 +217,7 @@ "TIMES": "Antall ganger per interaksjon", "TEXT": "Tekst", "INSERT_MESSAGE_HERE": "Sett inn tekstmeldingen din her", - "DELETE_INTERACTION": "Slett samhandling" + "DELETE_INTERACTION": "Slett samhandling", + "AUTHID": "Auth ID" } } \ No newline at end of file diff --git a/public/app/main/apps/sms/i18n/pl.json b/public/app/main/apps/sms/i18n/pl.json index 7504298..7a78d2c 100644 --- a/public/app/main/apps/sms/i18n/pl.json +++ b/public/app/main/apps/sms/i18n/pl.json @@ -43,7 +43,8 @@ "VALUE_REQUIRED": "Pole obowiązkowe", "SENDERSTRING_MAX_LENGTH": "Wartość musi mieć maksymalną długość równą {{max}}", "SENDERSTRING_MUST_VALID_PATTERN": "Zły format", - "METHOD_REQUIRED": "Pole obowiązkowe" + "METHOD_REQUIRED": "Pole obowiązkowe", + "AUTHID_REQUIRED": "Pole obowiązkowe" }, "AGENT_TIMEOUT": "Agent Timeout", "DESCRIPTION": "Opis", @@ -216,6 +217,7 @@ "TIMES": "Liczba razy na interakcję", "TEXT": "Tekst", "INSERT_MESSAGE_HERE": "Tutaj wstaw wiadomość tekstową", - "DELETE_INTERACTION": "Usuń interakcję" + "DELETE_INTERACTION": "Usuń interakcję", + "AUTHID": "Auth ID" } } \ No newline at end of file diff --git a/public/app/main/apps/sms/i18n/pt-PT.json b/public/app/main/apps/sms/i18n/pt-PT.json index d243af6..fa1487c 100644 --- a/public/app/main/apps/sms/i18n/pt-PT.json +++ b/public/app/main/apps/sms/i18n/pt-PT.json @@ -39,7 +39,8 @@ "VALUE_REQUIRED": "Campo Obrigatório", "SENDERSTRING_MAX_LENGTH": "O valor deve ter um tamanho máximo igual a {{max}}", "SENDERSTRING_MUST_VALID_PATTERN": "Formato incorreto", - "METHOD_REQUIRED": "Campo Obrigatório" + "METHOD_REQUIRED": "Campo Obrigatório", + "AUTHID_REQUIRED": "Campo Obrigatório" }, "AGENT_TIMEOUT": "Tempo Limite do Agente", "DESCRIPTION": "Descrição", @@ -216,6 +217,7 @@ "TIMES": "Número de vezes por interação", "TEXT": "Texto", "INSERT_MESSAGE_HERE": "Insira sua mensagem de texto aqui", - "DELETE_INTERACTION": "Excluir interação" + "DELETE_INTERACTION": "Excluir interação", + "AUTHID": "ID de autorização" } } \ No newline at end of file diff --git a/public/app/main/apps/sms/i18n/ru.json b/public/app/main/apps/sms/i18n/ru.json index 2bfa0e4..b79464d 100644 --- a/public/app/main/apps/sms/i18n/ru.json +++ b/public/app/main/apps/sms/i18n/ru.json @@ -39,7 +39,8 @@ "VALUE_REQUIRED": "Обязательное поле", "SENDERSTRING_MAX_LENGTH": "Значение должно иметь максимальную длину, равную {{max}}", "SENDERSTRING_MUST_VALID_PATTERN": "Неверный формат", - "METHOD_REQUIRED": "Обязательное поле" + "METHOD_REQUIRED": "Обязательное поле", + "AUTHID_REQUIRED": "Обязательное поле" }, "AGENT_TIMEOUT": "Время ожидания оператора", "DESCRIPTION": "Описание", @@ -216,6 +217,7 @@ "TIMES": "Количество раз за взаимодействие", "TEXT": "Текст", "INSERT_MESSAGE_HERE": "Вставьте свое текстовое сообщение здесь", - "DELETE_INTERACTION": "Удалить взаимодействие" + "DELETE_INTERACTION": "Удалить взаимодействие", + "AUTHID": "Auth ID" } } \ No newline at end of file diff --git a/public/app/main/apps/sms/i18n/sv.json b/public/app/main/apps/sms/i18n/sv.json index 37b58d3..3834352 100644 --- a/public/app/main/apps/sms/i18n/sv.json +++ b/public/app/main/apps/sms/i18n/sv.json @@ -39,7 +39,8 @@ "VALUE_REQUIRED": "Obligatoriskt fält", "SENDERSTRING_MAX_LENGTH": "Värdet måste ha en maximal längd som är lika med {{max}}", "SENDERSTRING_MUST_VALID_PATTERN": "Fel format", - "METHOD_REQUIRED": "Obligatoriskt fält" + "METHOD_REQUIRED": "Obligatoriskt fält", + "AUTHID_REQUIRED": "Obligatoriskt fält" }, "AGENT_TIMEOUT": "Tidsgräns för agent", "DESCRIPTION": "Beskrivning", @@ -216,6 +217,7 @@ "TIMES": "Antal gånger per interaktion", "TEXT": "Text", "INSERT_MESSAGE_HERE": "Sätt ditt textmeddelande här", - "DELETE_INTERACTION": "Ta bort interaktion" + "DELETE_INTERACTION": "Ta bort interaktion", + "AUTHID": "Auth ID" } } \ No newline at end of file diff --git a/public/app/main/apps/sms/i18n/tr.json b/public/app/main/apps/sms/i18n/tr.json index 55a206b..08ecdd6 100644 --- a/public/app/main/apps/sms/i18n/tr.json +++ b/public/app/main/apps/sms/i18n/tr.json @@ -39,7 +39,8 @@ "VALUE_REQUIRED": "Zorunlu alan", "SENDERSTRING_MAX_LENGTH": "Değer, {{max}} değerine eşit bir maksimum uzunluğa sahip olmalıdır.", "SENDERSTRING_MUST_VALID_PATTERN": "Yanlış format", - "METHOD_REQUIRED": "Zorunlu alan" + "METHOD_REQUIRED": "Zorunlu alan", + "AUTHID_REQUIRED": "Zorunlu alan" }, "AGENT_TIMEOUT": "Ajan Zaman Aşımı", "DESCRIPTION": "Açıklama", @@ -216,6 +217,7 @@ "TIMES": "Etkileşim başına kaç kez", "TEXT": "Metin", "INSERT_MESSAGE_HERE": "Metin mesajınızı buraya ekleyin", - "DELETE_INTERACTION": "Etkileşimi Sil" + "DELETE_INTERACTION": "Etkileşimi Sil", + "AUTHID": "Kimlik No" } } \ No newline at end of file diff --git a/public/app/main/apps/sms/i18n/zh-CN.json b/public/app/main/apps/sms/i18n/zh-CN.json index e653698..edbfe23 100644 --- a/public/app/main/apps/sms/i18n/zh-CN.json +++ b/public/app/main/apps/sms/i18n/zh-CN.json @@ -39,7 +39,8 @@ "VALUE_REQUIRED": "必填项", "SENDERSTRING_MAX_LENGTH": "该值的最大长度必须等于{{max}}", "SENDERSTRING_MUST_VALID_PATTERN": "错误的格式", - "METHOD_REQUIRED": "必填项" + "METHOD_REQUIRED": "必填项", + "AUTHID_REQUIRED": "必填项" }, "AGENT_TIMEOUT": "代理超时", "DESCRIPTION": "描述", @@ -216,6 +217,7 @@ "TIMES": "每次互动的次数", "TEXT": "文本", "INSERT_MESSAGE_HERE": "在此处插入您的短信", - "DELETE_INTERACTION": "删除交互" + "DELETE_INTERACTION": "删除交互", + "AUTHID": "身份验证ID" } } \ No newline at end of file diff --git a/public/app/main/apps/sms/i18n/zh-TW.json b/public/app/main/apps/sms/i18n/zh-TW.json index 1875fc1..4f27194 100644 --- a/public/app/main/apps/sms/i18n/zh-TW.json +++ b/public/app/main/apps/sms/i18n/zh-TW.json @@ -39,7 +39,8 @@ "VALUE_REQUIRED": "必填項", "SENDERSTRING_MAX_LENGTH": "該值的最大長度必須等於{{max}}", "SENDERSTRING_MUST_VALID_PATTERN": "錯誤的格式", - "METHOD_REQUIRED": "必填項" + "METHOD_REQUIRED": "必填項", + "AUTHID_REQUIRED": "必填項" }, "AGENT_TIMEOUT": "值機人員等候逾時", "DESCRIPTION": "說明", @@ -216,6 +217,7 @@ "TIMES": "每次互動的次數", "TEXT": "文本", "INSERT_MESSAGE_HERE": "在此處插入您的短信", - "DELETE_INTERACTION": "刪除交互" + "DELETE_INTERACTION": "刪除交互", + "AUTHID": "身份驗證ID" } } \ No newline at end of file diff --git a/public/index.html b/public/index.html index 75b39b7..22a7696 100644 --- a/public/index.html +++ b/public/index.html @@ -12,7 +12,7 @@ - + @@ -56,9 +56,9 @@ - + - + diff --git a/public/scripts/app.0eff18c6.js b/public/scripts/app.0eff18c6.js new file mode 100644 index 0000000..128b830 --- /dev/null +++ b/public/scripts/app.0eff18c6.js @@ -0,0 +1 @@ +function mxDictionary(){this.clear()}function mxPoint(e,t){this.x=null!=e?e:0,this.y=null!=t?t:0}function mxRectangle(e,t,n,a){mxPoint.call(this,e,t),this.width=null!=n?n:0,this.height=null!=a?a:0}function mxEventObject(e){this.name=e,this.properties=[];for(var t=1;t"+this.encodeChanges(n.changes,n.undone)+"")}))}function mxUndoableEdit(e,t){this.source=e,this.changes=[],this.significant=null==t||t}function mxUndoManager(e){this.size=null!=e?e:100,this.clear()}function mxPanningManager(e){this.thread=null,this.active=!1,this.dy=this.dx=this.t0y=this.t0x=this.tdy=this.tdx=0,this.scrollbars=!1,this.scrollTop=this.scrollLeft=0,this.mouseListener={mouseDown:function(e,t){},mouseMove:function(e,t){},mouseUp:mxUtils.bind(this,function(e,t){this.active&&this.stop()})},e.addMouseListener(this.mouseListener),mxEvent.addListener(document,"mouseup",mxUtils.bind(this,function(){this.active&&this.stop()}));var t=mxUtils.bind(this,function(){return this.scrollbars=mxUtils.hasScrollbars(e.container),this.scrollLeft=e.container.scrollLeft,this.scrollTop=e.container.scrollTop,window.setInterval(mxUtils.bind(this,function(){if(this.tdx-=this.dx,this.tdy-=this.dy,this.scrollbars){var t=-e.container.scrollLeft-Math.ceil(this.dx),n=-e.container.scrollTop-Math.ceil(this.dy);e.panGraph(t,n),e.panDx=this.scrollLeft-e.container.scrollLeft,e.panDy=this.scrollTop-e.container.scrollTop,e.fireEvent(new mxEventObject(mxEvent.PAN))}else e.panGraph(this.getDx(),this.getDy())}),this.delay)});this.isActive=function(){return active},this.getDx=function(){return Math.round(this.tdx)},this.getDy=function(){return Math.round(this.tdy)},this.start=function(){this.t0x=e.view.translate.x,this.t0y=e.view.translate.y,this.active=!0},this.panTo=function(n,a,o,i){this.active||this.start(),this.scrollLeft=e.container.scrollLeft,this.scrollTop=e.container.scrollTop,i=null!=i?i:0;var s=e.container;this.dx=n+(null!=o?o:0)-s.scrollLeft-s.clientWidth,0>this.dx&&Math.abs(this.dx)this.dy&&Math.abs(this.dy)mxUtils.indexOf(l.connectsAsTarget,s)&&l.connectsAsTarget.push(s))}}n[a].temp[0]=1}}function mxHierarchicalLayoutStage(){}function mxMedianHybridCrossingReduction(e){this.layout=e}function MedianCellSorter(){}function mxMinimumCycleRemover(e){this.layout=e}function mxCoordinateAssignment(e,t,n,a,o,i){this.layout=e,this.intraCellSpacing=t,this.interRankCellSpacing=n,this.orientation=a,this.initialX=o,this.parallelEdgeSpacing=i}function WeightedCellSorter(e,t){this.cell=e,this.weightedValue=t}function mxHierarchicalLayout(e,t,n){mxGraphLayout.call(this,e),this.orientation=null!=t?t:mxConstants.DIRECTION_NORTH,this.deterministic=null==n||n}function mxGraphModel(e){this.currentEdit=this.createUndoableEdit(),null!=e?this.setRoot(e):this.clear()}function mxRootChange(e,t){this.model=e,this.previous=this.root=t}function mxChildChange(e,t,n,a){this.model=e,this.previous=this.parent=t,this.child=n,this.previousIndex=this.index=a}function mxTerminalChange(e,t,n,a){this.model=e,this.cell=t,this.previous=this.terminal=n,this.source=a}function mxValueChange(e,t,n){this.model=e,this.cell=t,this.previous=this.value=n}function mxStyleChange(e,t,n){this.model=e,this.cell=t,this.previous=this.style=n}function mxGeometryChange(e,t,n){this.model=e,this.cell=t,this.previous=this.geometry=n}function mxCollapseChange(e,t,n){this.model=e,this.cell=t,this.previous=this.collapsed=n}function mxVisibleChange(e,t,n){this.model=e,this.cell=t,this.previous=this.visible=n}function mxCellAttributeChange(e,t,n){this.cell=e,this.attribute=t,this.previous=this.value=n}function mxCell(e,t,n){this.value=e,this.setGeometry(t),this.setStyle(n),null!=this.onInit&&this.onInit()}function mxGeometry(e,t,n,a){mxRectangle.call(this,e,t,n,a)}function mxPrintPreview(e,t,n,a,o,i,s,r,l){this.graph=e,this.scale=null!=t?t:1/e.pageScale,this.border=null!=a?a:0,this.pageFormat=null!=n?n:e.pageFormat,this.title=null!=r?r:"Printer-friendly version",this.x0=null!=o?o:0,this.y0=null!=i?i:0,this.borderColor=s,this.pageSelector=null==l||l}function mxStylesheet(){this.styles={},this.putDefaultVertexStyle(this.createDefaultVertexStyle()),this.putDefaultEdgeStyle(this.createDefaultEdgeStyle())}function mxCellState(e,t,n){this.view=e,this.cell=t,this.style=n,this.origin=new mxPoint,this.absoluteOffset=new mxPoint}function mxGraphSelectionModel(e){this.graph=e,this.cells=[]}function mxSelectionChange(e,t,n){this.selectionModel=e,this.added=null!=t?t.slice():null,this.removed=null!=n?n.slice():null}function mxCellEditor(e){this.graph=e}function mxCellRenderer(){}function mxGraphView(e){this.graph=e,this.translate=new mxPoint,this.graphBounds=new mxRectangle,this.states=new mxDictionary}function mxCurrentRootChange(e,t){if(this.view=e,this.previous=this.root=t,this.isUp=null==t,!this.isUp)for(var n=this.view.currentRoot,a=this.view.graph.getModel();null!=n;){if(n==t){this.isUp=!0;break}n=a.getParent(n)}}function mxGraph(e,t,n,a){this.mouseListeners=null,this.renderHint=n,this.dialect=mxClient.IS_SVG?mxConstants.DIALECT_SVG:n==mxConstants.RENDERING_HINT_EXACT&&mxClient.IS_VML?mxConstants.DIALECT_VML:n==mxConstants.RENDERING_HINT_FASTEST?mxConstants.DIALECT_STRICTHTML:n==mxConstants.RENDERING_HINT_FASTER?mxConstants.DIALECT_PREFERHTML:mxConstants.DIALECT_MIXEDHTML,this.model=null!=t?t:new mxGraphModel,this.multiplicities=[],this.imageBundles=[],this.cellRenderer=this.createCellRenderer(),this.setSelectionModel(this.createSelectionModel()),this.setStylesheet(null!=a?a:this.createStylesheet()),this.view=this.createGraphView(),this.graphModelChangeListener=mxUtils.bind(this,function(e,t){this.graphModelChanged(t.getProperty("edit").changes)}),this.model.addListener(mxEvent.CHANGE,this.graphModelChangeListener),this.createHandlers(),null!=e&&this.init(e),this.view.revalidate()}function mxCellOverlay(e,t,n,a,o,i){this.image=e,this.tooltip=t,this.align=null!=n?n:this.align,this.verticalAlign=null!=a?a:this.verticalAlign,this.offset=null!=o?o:new mxPoint,this.cursor=null!=i?i:"help"}function mxOutline(e,t){this.source=e,null!=t&&this.init(t)}function mxMultiplicity(e,t,n,a,o,i,s,r,l,d){this.source=e,this.type=t,this.attr=n,this.value=a,this.min=null!=o?o:0,this.max=null!=i?i:"n",this.validNeighbors=s,this.countError=mxResources.get(r)||r,this.typeError=mxResources.get(l)||l,this.validNeighborsAllowed=null==d||d}function mxLayoutManager(e){this.undoHandler=mxUtils.bind(this,function(e,t){this.isEnabled()&&this.beforeUndo(t.getProperty("edit"))}),this.moveHandler=mxUtils.bind(this,function(e,t){this.isEnabled()&&this.cellsMoved(t.getProperty("cells"),t.getProperty("event"))}),this.setGraph(e)}function mxSpaceManager(e,t,n,a){this.resizeHandler=mxUtils.bind(this,function(e,t){this.isEnabled()&&this.cellsResized(t.getProperty("cells"))}),this.foldHandler=mxUtils.bind(this,function(e,t){this.isEnabled()&&this.cellsResized(t.getProperty("cells"))}),this.shiftRightwards=null==t||t,this.shiftDownwards=null==n||n,this.extendParents=null==a||a,this.setGraph(e)}function mxSwimlaneManager(e,t,n,a){this.horizontal=null==t||t,this.addEnabled=null==n||n,this.resizeEnabled=null==a||a,this.addHandler=mxUtils.bind(this,function(e,t){this.isEnabled()&&this.isAddEnabled()&&this.cellsAdded(t.getProperty("cells"))}),this.resizeHandler=mxUtils.bind(this,function(e,t){this.isEnabled()&&this.isResizeEnabled()&&this.cellsResized(t.getProperty("cells"))}),this.setGraph(e)}function mxTemporaryCellStates(e,t,n){if(this.view=e,t=null!=t?t:1,this.oldBounds=e.getGraphBounds(),this.oldStates=e.getStates(),this.oldScale=e.getScale(),e.setStates(new mxDictionary),e.setScale(t),null!=n){t=e.createState(new mxCell);for(o=0;o0||""!=t)&&(o.selected=t===a),n.appendChild(o)}return n.className="form-control select2",n}function createDropdownFromTigerDialList(e){var t=document.createElement("select"),n=[],a=new XMLHttpRequest;try{if(a.open("POST","/api/rest/list/list",!1),a.send(JSON.stringify({page:1,size:6e5})),200===a.status){var o=JSON.parse(a.response);if(o.status>0){var i=o.response.RMI.rows;for(var s in i)n[i[s].id]=i[s].name}}}catch(e){console.log(e)}for(var r in n){var l=document.createElement("option");l.text=n[r],l.value=r,(e>0||""!=e)&&(l.selected=e===r),t.appendChild(l)}return t.className="form-control select2",t}function Dialog(e,t,n,a,o,i,s){var r=0;mxClient.IS_IE&&9!=document.documentMode&&(r=60),n+=r,a+=r;Math.max(0,Math.round((document.body.scrollWidth-n)/2)),Math.max(0,Math.round((Math.max(document.body.scrollHeight,document.documentElement.scrollHeight)-a)/3));var l=e.createDiv("geDialog");l.className="modal fade in center",l.style.display="block",l.style.paddingRight="12px";var d=e.createDiv("geModalDialog");d.className="modal-dialog",d.appendChild(t),l.appendChild(d),null==this.bg&&(this.bg=e.createDiv("background"),this.bg.className="modal-backdrop fade in",mxClient.IS_QUIRKS&&new mxDivResizer(this.bg)),o&&document.body.appendChild(this.bg),document.body.appendChild(l),this.onDialogClose=s,this.container=l}function ImportDialog(e){var t=e.createDiv("modal-content"),n=e.createDiv("modal-header"),a=e.createDiv("modal-body"),o=e.createDiv("modal-footer"),i=e.createHeader("h4");mxUtils.write(i,mxResources.get("import")+" XML");var s=mxUtils.button("",function(){e.hideDialog()});s.className="close",n.appendChild(s),n.appendChild(i);var r=e.createDiv("row"),l=e.createDiv("col-md-12"),d=document.createElement("textarea");d.style.width="100%",d.style.height="374px";var c=document.createElement("input");c.type="file",c.setAttribute("accept","text/xml"),c.addEventListener("change",function(e){var t=e.target.files[0];if(console.log(t),t)if("text/xml"===t.type){var n=new FileReader;n.onload=function(e){var t=e.target.result;mxUtils.write(d,t)},n.readAsText(t)}else alert("Failed to load format file");else alert("Failed to load file")},!1),l.appendChild(c),l.appendChild(d),r.appendChild(l),a.appendChild(r);var m=mxUtils.button(mxResources.get("import"),mxUtils.bind(this,function(t){var n=mxUtils.parseXml(d.value);e.editor.setGraphXml(n.documentElement),e.hideDialog()}));m.className="btn blue";var u=mxUtils.button(mxResources.get("cancel"),function(){e.hideDialog()});u.className="btn default",o.appendChild(m),o.appendChild(u),t.appendChild(n),t.appendChild(a),t.appendChild(o),this.container=t}function AboutDialog(e){var t=e.createDiv("modal-content"),n=e.createDiv("modal-header"),a=e.createDiv("modal-body"),o=e.createDiv("modal-footer"),i=e.createHeader("h4");mxUtils.write(i,mxResources.get("about")+" Cally Square");var s=mxUtils.button("",function(){e.hideDialog()});s.className="close",n.appendChild(s),n.appendChild(i);var r=document.createElement("img");r.style.border="0px",r.setAttribute("width","176"),r.setAttribute("width","151"),r.setAttribute("src",IMAGE_PATH+"/logo.png"),a.appendChild(r),mxUtils.br(a),mxUtils.write(a,"Powered by Xenialab "+mxClient.VERSION),mxUtils.br(a);var l=document.createElement("a");l.setAttribute("href","http://www.callysquare.com/"),l.setAttribute("target","_blank"),mxUtils.write(l,"www.callysquare.com"),a.appendChild(l),mxUtils.br(a),mxUtils.br(a);var d=mxUtils.button(mxResources.get("close"),function(){e.hideDialog()});d.className="btn default",o.appendChild(d),t.appendChild(n),t.appendChild(a),t.appendChild(o),this.container=t}function SaveDialog(e){var t=e.createDiv("modal-content"),n=e.createDiv("modal-header"),a=e.createDiv("modal-body"),o=e.createDiv("modal-footer"),i=e.createHeader("h4");mxUtils.write(i,mxResources.get("saveAs"));var s=mxUtils.button("",function(){e.hideDialog()});s.className="close",n.appendChild(s),n.appendChild(i);var r=e.editor.getOrCreateFilename(),l=e.createDiv("row"),d=e.createDiv("col-md-4"),c=e.createDiv("col-md-8"),m=document.createElement("label");m.className="control-label pull-right",mxUtils.write(m,mxResources.get("name")),d.appendChild(m);var u=document.createElement("input");u.setAttribute("value",r+"_copy"),u.setAttribute("id","_name"),u.className="form-control",c.appendChild(u),l.appendChild(d),l.appendChild(c),a.appendChild(l);var p=mxUtils.button(mxResources.get("save"),function(){e.saveAs(u.value),e.hideDialog()});p.className="btn blue";var g=mxUtils.button(mxResources.get("cancel"),function(){e.hideDialog()});g.className="btn default",o.appendChild(p),o.appendChild(g),t.appendChild(n),t.appendChild(a),t.appendChild(o),this.container=t}function NewDialog(e){var t=e.createDiv("modal-content"),n=e.createDiv("modal-header"),a=e.createDiv("modal-body"),o=e.createDiv("modal-footer"),i=e.createHeader("h4");mxUtils.write(i,mxResources.get("new"));var s=mxUtils.button("",function(){e.hideDialog()});s.className="close",n.appendChild(s),n.appendChild(i);var r=e.editor.getOrCreateFilename(),l=e.createDiv("row"),d=e.createDiv("col-md-4"),c=e.createDiv("col-md-8"),m=document.createElement("label");m.className="control-label pull-right",mxUtils.write(m,mxResources.get("name")),d.appendChild(m);var u=document.createElement("input");u.setAttribute("value",r+"_new"),u.setAttribute("id","_name"),u.className="form-control",c.appendChild(u),l.appendChild(d),l.appendChild(c),a.appendChild(l);var p=mxUtils.button(mxResources.get("new"),function(){e.new(u.value),e.hideDialog()});p.className="btn blue";var g=mxUtils.button(mxResources.get("cancel"),function(){e.hideDialog()});g.className="btn default",o.appendChild(p),o.appendChild(g),t.appendChild(n),t.appendChild(a),t.appendChild(o),this.container=t}function DescriptionDialog(e){console.log(e.editor.data);var t=e.createDiv("modal-content"),n=e.createDiv("modal-header"),a=e.createDiv("modal-body"),o=e.createDiv("modal-footer"),i=e.createHeader("h4");mxUtils.write(i,mxResources.get("description"));var s=mxUtils.button("",function(){e.hideDialog()});s.className="close",n.appendChild(s),n.appendChild(i);var r=e.createDiv("form-horizontal form-row-seperated"),l=e.editor.data.description||"",d=e.createDiv("form-group"),c=document.createElement("label");c.className="col-sm-4 control-label",mxUtils.write(c,mxResources.get("description")),d.appendChild(c);var m=document.createElement("input");m.setAttribute("value",l),m.className="form-control",m.setAttribute("id","_description");var u=e.createDiv("col-sm-8");u.appendChild(m),d.appendChild(u),r.appendChild(d),a.appendChild(r);var p=mxUtils.button(mxResources.get("update"),function(){e.description(m.value),e.hideDialog()});p.className="btn blue";var g=mxUtils.button(mxResources.get("cancel"),function(){e.hideDialog()});g.className="btn default",o.appendChild(p),o.appendChild(g),t.appendChild(n),t.appendChild(a),t.appendChild(o),this.container=t}function VariableDialog(e){var t=e.createDiv("modal-content"),n=e.createDiv("modal-header"),a=e.createDiv("modal-body"),o=e.createDiv("modal-footer"),i=e.createHeader("h4");mxUtils.write(i,mxResources.get("variable"));var s=mxUtils.button("",function(){e.hideDialog()});s.className="close",n.appendChild(s),n.appendChild(i);var r=e.createDiv("form-horizontal form-row-seperated"),l="name",d="_"+l,c="variable name",m=e.createDiv("form-group"),u=document.createElement("label");u.className="col-sm-4 control-label",mxUtils.write(u,mxResources.get(l)),m.appendChild(u);var p=document.createElement("input");p.setAttribute("value",c),p.className="form-control",p.setAttribute("id",d);var g=e.createDiv("col-sm-8");g.appendChild(p),m.appendChild(g),r.appendChild(m),d="_"+(l="description"),c="variable description",m=e.createDiv("form-group last"),(u=document.createElement("label")).className="col-sm-4 control-label",mxUtils.write(u,mxResources.get(l)),m.appendChild(u);var v=document.createElement("input");v.setAttribute("value",c),v.className="form-control",v.setAttribute("id",d),(g=e.createDiv("col-sm-8")).appendChild(v),m.appendChild(g),r.appendChild(m),a.appendChild(r);var h=mxUtils.button(mxResources.get("new"),function(){e.variable(p.value,v.value),e.hideDialog()});h.className="btn blue";var b=mxUtils.button(mxResources.get("cancel"),function(){e.hideDialog()});b.className="btn default",o.appendChild(h),o.appendChild(b),t.appendChild(n),t.appendChild(a),t.appendChild(o),this.container=t}function OpenDialog(e){var t=e.createDiv("modal-content"),n=e.createDiv("modal-header"),a=e.createDiv("modal-body"),o=e.createDiv("modal-footer"),i=e.createHeader("h4");mxUtils.write(i,mxResources.get("open"));var s=mxUtils.button("",function(){e.hideDialog()});s.className="close",n.appendChild(s),n.appendChild(i);var r=e.createDiv("row"),l=e.createDiv("col-md-4"),d=e.createDiv("col-md-8"),c=document.createElement("label");c.className="control-label pull-right",mxUtils.write(c,mxResources.get("name")),l.appendChild(c);var m=new XMLHttpRequest;m.open("GET","/api/square/projects",!1),m.setRequestHeader("Authorization","Bearer "+e.editor.data.token),m.send(null);var u=[];200===m.status&&(u=JSON.parse(m.response));for(var p=document.createElement("select"),g=0;g0){var t=e.dataTransfer.files[0],n=new FileReader;n.onload=function(e){m.value=e.target.result},n.readAsText(t)}}function n(e){e.stopPropagation(),e.preventDefault()}var a=e.createDiv("modal-content"),o=e.createDiv("modal-header"),i=e.createDiv("modal-body"),s=e.createDiv("modal-footer"),r=e.createHeader("h4");mxUtils.write(r,mxResources.get("edit"));var l=mxUtils.button("",function(){e.hideDialog()});l.className="close",o.appendChild(l),o.appendChild(r);var d=e.createDiv("row"),c=e.createDiv("col-md-12"),m=document.createElement("textarea");m.style.width="100%",m.style.height="374px",m.value=mxUtils.getPrettyXml(e.editor.getGraphXml()),fileSupport&&(m.addEventListener("dragover",n,!1),m.addEventListener("drop",t,!1)),c.appendChild(m),d.appendChild(c),i.appendChild(d);var u=mxUtils.button(mxResources.get("save"),function(){var t=mxUtils.parseXml(m.value);e.editor.setGraphXml(t.documentElement),e.hideDialog()});u.className="btn blue";var p=mxUtils.button(mxResources.get("cancel"),function(){e.hideDialog()});p.className="btn default",s.appendChild(u),s.appendChild(p),a.appendChild(o),a.appendChild(i),a.appendChild(s),this.container=a}function ExportDialog(e){var t=e.createDiv("modal-content"),n=e.createDiv("modal-header"),a=e.createDiv("modal-body form"),o=e.createDiv("modal-footer"),i=e.createHeader("h4");mxUtils.write(i,mxResources.get("export")+" XML");var s=mxUtils.button("",function(){e.hideDialog()});s.className="close",n.appendChild(s),n.appendChild(i);var r=e.createDiv("form-horizontal form-row-seperated"),l=e.createDiv("form-group last"),d=document.createElement("label");d.className="col-sm-4 control-label",mxUtils.write(d,mxResources.get("filename"));var c=document.createElement("input");c.setAttribute("value",e.editor.getOrCreateFilename()),c.className="form-control";var m=e.createDiv("col-sm-8");m.appendChild(c),l.appendChild(d),l.appendChild(m),r.appendChild(l),a.appendChild(r);var u=mxUtils.button(mxResources.get("export"),mxUtils.bind(this,function(t){e.save(!1);encodeURIComponent(mxUtils.getXml(e.editor.getGraphXml()));new mxXmlRequest(SAVE_URL+e.editor.data.id+"/download","filename="+c.value,"GET").simulate(document,"_blank"),e.hideDialog()}));u.className="btn blue";var p=mxUtils.button(mxResources.get("cancel"),function(){e.hideDialog()});p.className="btn default",o.appendChild(u),o.appendChild(p),t.appendChild(n),t.appendChild(a),t.appendChild(o),this.container=t}function GeneralDialog(e,t){console.log("general");var n=e.editor.graph,a=e.createDiv("md-dialog"),o=e.createDiv("md-toolbar"),i=e.createDiv("md-dialog-content"),s=e.createDiv("md-dialog-actions"),r=e.createHeader("h4");mxUtils.write(r,mxResources.get("edit")+" "+mxResources.get(t.value.nodeName));var l=mxUtils.button("",function(){e.hideDialog()});l.className="close",o.appendChild(l),o.appendChild(r);for(var d=t.value.attributes.length,c=e.createDiv("form-horizontal form-row-seperated"),m=0;m=1}};return t}e.$inject=["$window"],angular.module("app.auth").factory("Util",e)}(),function(){"use strict";function e(){function e(e){t=angular.extend({},t,e)}var t={disableCustomScrollbars:!1,disableMdInkRippleOnMobile:!0,disableCustomScrollbarsOnMobile:!0};this.config=e,this.$get=function(){function e(e){return!angular.isUndefined(t[e])&&t[e]}function n(e,n){t[e]=n}return{getConfig:e,setConfig:n}}}angular.module("app.core").provider("motionConfig",e)}(),function(){"use strict";function e(e,t,n,a){t.debugEnabled(!0),e.config({tabindex:!1}),a.config({disableCustomScrollbars:!1,disableCustomScrollbarsOnMobile:!0,disableMdInkRippleOnMobile:!0}),n.config({wheelPropagation:!0})}e.$inject=["$ariaProvider","$logProvider","msScrollConfigProvider","motionConfigProvider"],angular.module("app.core").config(e)}(),function(){"use strict";function e(e,t,n){t.generate(),n.getConfig("disableMdInkRippleOnMobile")&&e.isMobile()&&angular.element("body").attr("md-no-ink",!0),e.isMobile()&&angular.element("html").addClass("is-mobile");var a=e.detectBrowser();if(a){var o=a.browser+" "+a.version+" "+a.os;angular.element("html").addClass(o)}}e.$inject=["msUtils","motionGenerator","motionConfig"],angular.module("app.core").run(e)}(),function(){"use strict";function e(e,t,n){return{restrict:"E",compile:function(a,o){var i;return o.code||(i=a.html(),a.empty()),function(a,o,s){function r(e,t){var n=t.find("code"),a=e.split("\n"),o=(a=a.filter(function(e){return e.trim().length}))[0].match(/^\s*/)[0],i=new RegExp("^"+o);a=a.map(function(e){return e.replace(i,"").replace(/\s+$/,"")});var r=hljs.highlight(s.language||s.lang,a.join("\n"),!0);r.value=r.value.replace(/=""<\/span>/gi,"").replace("","").replace("",""),n.append(r.value).addClass("highlight")}s.code&&(i=a.$eval(s.code));var l=a.$eval(s.shouldInterpolate);t.when(i).then(function(t){if(t){l&&(t=n(t)(a));var i=angular.element('
');o.append(i),e(function(){r(t,i)},34,!1)}})}}}}e.$inject=["$timeout","$q","$interpolate"],angular.module("app.core").directive("hljs",e)}(),function(){"use strict";function e(){return{restrict:"E",scope:{templatePath:"=template",card:"=ngModel",vm:"=viewModel"},template:'
',compile:function(e){return e.addClass("ms-card"),function(e,t){function n(){e.$emit("msCard::cardTemplateLoaded",t)}e.cardTemplateLoaded=n}}}}angular.module("app.core").directive("msCard",e)}(),function(){"use strict";function e(){function e(e){n=angular.extend({},n,e)}var t=this,n={formatter:function(e){return e?""===e?e:new Date(e):""},parser:function(e){return e?moment(e).add(moment(e).utcOffset(),"m").toDate():""}};t.config=e,t.$get=function(){return n}}function t(e){return{require:"ngModel",priority:1,link:function(t,n,a,o){o.$formatters.push(e.formatter),o.$parsers.push(e.parser)}}}t.$inject=["msDatepickerFixConfig"],angular.module("app.core").provider("msDatepickerFixConfig",e).directive("msDatepickerFix",t)}(),function(){"use strict";function e(){return{restrict:"E",scope:{options:"="},controller:["$scope",function(e){e.transfer=function(t,n,a,o){var i=[];if(a>=0)i.push(t[a]),n.push(t[a]),t.splice(a,1);else{for(var s=0;s0&&angular.isDefined(u.forms[u.selectedIndex-1])&&u.forms[u.selectedIndex-1].$invalid}function c(){for(var e=0;ed.options.responsive.md?d.options.responsive.md:d.columnCount:n("sm")?d.columnCount=d.columnCount>d.options.responsive.sm?d.options.responsive.sm:d.columnCount:d.columnCount=d.options.responsive.xs,d.columnWidth=d.containerPos.width/d.columnCount}var d=this,c={columnCount:5,respectItemOrder:!1,reLayoutDebounce:400,responsive:{md:3,sm:2,xs:1}},m=!0;d.options=null,d.container=[],d.containerPos="",d.columnWidth="",d.items=[],d.reLayout=r,d.initialize=o,d.waitImagesLoaded=i,e.$on("msMasonry:relayout",function(){r()})}function t(e){function t(t,n){return{pre:function(e,a,o,i){i.options=angular.fromJson(n.options||"{}"),i.container=t},post:function(t,n,a,o){e(function(){o.initialize()})}}}return{restrict:"AEC",controller:"msMasonryController",compile:t}}function n(){function e(e,t,n,a){a.waitImagesLoaded(t,function(){a.reLayout()}),e.$on("msMasonryItem:finishReLayout",function(){e.$watch(function(){return t.height()},function(e,t){e!==t&&a.reLayout()})}),t.on("$destroy",function(){a.reLayout()})}return{restrict:"AEC",require:"^msMasonry",priority:1,link:e}}e.$inject=["$scope","$window","$mdMedia","$timeout"],t.$inject=["$timeout"],angular.module("app.core").controller("msMasonryController",e).directive("msMasonry",t).directive("msMasonryItem",n)}(),function(){"use strict";function e(e,t,n,a){function o(e,t){c.selectedPalette=e,c.selectedHues=t}function i(e,t){l(e,t),d(),n.hide()}function s(){c.selectedColor={palette:"",hue:"",class:""},o(!1,!1),d()}function r(){if(c.modelCtrl.$viewValue&&""!==c.modelCtrl.$viewValue){var e,t;if("class"===c.msModelType){var n=c.modelCtrl.$viewValue.split("-");n.length>=5?(e=n[1]+"-"+n[2],t=n[3]):(e=n[1],t=n[2])}else"obj"===c.msModelType&&(e=c.modelCtrl.$viewValue.palette,t=c.modelCtrl.$viewValue.hue||500);l(e,t)}else s()}function l(t,n){c.selectedColor={palette:t,hue:n,class:"md-"+t+"-"+n+"-bg",bgColorValue:a.rgba(c.palettes[t][n].value),fgColorValue:a.rgba(c.palettes[t][n].contrast)},"obj"!==c.msModelType||angular.equals(c.selectedColor,c.modelCtrl.$viewValue)||d(),o(t,c.palettes[t]),e.$selectedColor=c.selectedColor}function d(){"class"===c.msModelType?c.modelCtrl.$setViewValue(c.selectedColor.class):"obj"===c.msModelType&&c.modelCtrl.$setViewValue(c.selectedColor)}var c=this;c.palettes=t,c.selectedPalette=!1,c.selectedHues=!1,e.$selectedColor={},c.activateHueSelection=o,c.selectColor=i,c.removeColor=s,e.$watch("ngModel",r)}function t(){return{require:["msMaterialColorPicker","ngModel"],restrict:"E",scope:{ngModel:"=",msModelType:"@?"},controller:"msMaterialColorPickerController as vm",transclude:!0,templateUrl:"app/core/directives/ms-material-color-picker/ms-material-color-picker.html",link:function(e,t,n,a,o){var i=a[0];i.modelCtrl=a[1],i.msModelType=e.msModelType||"class",o(e,function(e){(e=e.filter(function(e,t){return 1===t.nodeType})).length&&t.find("ms-color-picker-button").replaceWith(e)})}}}e.$inject=["$scope","$mdColorPalette","$mdMenu","motionGenerator"],angular.module("app.core").controller("msMaterialColorPickerController",e).directive("msMaterialColorPicker",t)}(),function(){"use strict";function e(){function e(e,t){i={scope:e,element:t}}function t(){return i.scope.isNavFoldedOpen()}function n(){i.scope.toggleFold()}function a(){i.scope.openFolded()}function o(){i.scope.closeFolded()}var i={};return{setFoldable:e,isNavFoldedOpen:t,toggleFold:n,openFolded:a,closeFolded:o}}function t(e,t,n){return{restrict:"A",link:function(a,o,i){function s(){return p}function r(){(u=!u)?l():m()}function l(){g.addClass("ms-nav-folded"),t.$broadcast("msNav::forceCollapse"),o.scrollTop(0),b.append(v),v.on("mouseenter touchstart",function(e){d(e),p=!0})}function d(e){angular.isDefined(e)&&e.preventDefault(),g.addClass("ms-nav-folded-open"),t.$broadcast("msNav::expandMatchingToggles"),b.find(v).remove(),b.parent().append(h),h.on("mouseenter touchstart",function(e){c(e),p=!1})}function c(e){angular.isDefined(e)&&e.preventDefault(),t.$broadcast("msNav::forceCollapse"),o.scrollTop(0),g.removeClass("ms-nav-folded-open"),b.parent().find(h).remove(),b.append(v),v.on("mouseenter touchstart",function(e){d(e),p=!0})}function m(){g.removeClass("ms-nav-folded ms-nav-folded-open"),t.$broadcast("msNav::expandMatchingToggles"),o.off("mouseenter mouseleave")}var u="true"===i.msNavIsFolded,p=!1,g=angular.element(e[0].body),v=angular.element('
'),h=angular.element('
'),b=o.parent();n.setFoldable(a,o,u),u?l():m(),a.toggleFold=r,a.openFolded=d,a.closeFolded=c,a.isNavFoldedOpen=s,a.$on("$destroy",function(){v.off("mouseenter touchstart"),h.off("mouseenter touchstart"),o.off("mouseenter mouseleave")})}}}function n(){function e(){return l}function t(){l=!0}function n(){l=!1}function a(e,t){d.push({element:e,scope:t})}function o(){return c}function i(e,t){c.push({element:e,scope:t})}function s(){c=[]}var r=this,l=!1,d=[],c=[];r.isDisabled=e,r.enable=n,r.disable=t,r.setToggleItem=a,r.getLockedItems=o,r.setLockedItem=i,r.clearLockedItems=s}function a(e,t,n){return{restrict:"E",scope:{},controller:"MsNavController",compile:function(a){return a.addClass("ms-nav"),function(a){e.$broadcast("msNav::expandMatchingToggles");var o=e.$on("$stateChangeSuccess",function(){e.$broadcast("msNav::expandMatchingToggles"),t.when("navigation").then(function(e){e.close(),n.isNavFoldedOpen()&&n.closeFolded()})});a.$on("$destroy",function(){o()})}}}}function o(){return{restrict:"A",compile:function(e){return e.addClass("ms-nav-title"),function(){}}}}function i(){return{restrict:"AE",compile:function(e){return e.addClass("ms-nav-button"),function(){}}}}function s(e,t,n,a){return{restrict:"A",require:"^msNav",scope:!0,compile:function(o,i){return o.addClass("ms-nav-toggle"),angular.isUndefined(i.collapsed)&&(i.collapsed=!0),o.attr("collapsed",i.collapsed),function(o,i,s,r){function l(){r.isDisabled()||(r.disable(),d()?(r.clearLockedItems(),o.$emit("msNav::pushToLockedList"),e.$broadcast("msNav::collapse"),m().then(function(){r.enable()})):o.$broadcast("msNav::forceCollapse"))}function d(){return"true"===i.attr("collapsed")}function c(){return!d()}function m(){var e=t.defer();if(c())return e.reject({error:!0}),e.promise;i.attr("collapsed",!1);var a=angular.element(i.find("ms-nav-toggle-items")[0]);a.css({position:"absolute",visibility:"hidden",display:"block",height:"auto"});var s=a[0].offsetHeight;return a.css({position:"",visibility:"",display:"",height:""}),o.$evalAsync(function(){n.animate(a,{display:"block",height:"0px"},{height:s+"px"},p.expandAnimation).then(function(){a.addClass(p.expanded),a.css({height:""}),e.resolve({success:!0})})}),e.promise}function u(){var e=t.defer();if(d())return e.reject({error:!0}),e.promise;i.attr("collapsed",!0);var a=angular.element(i.find("ms-nav-toggle-items")[0]),s=a[0].offsetHeight;return o.$evalAsync(function(){n.animate(a,{height:s+"px"},{height:"0px"},p.collapseAnimation).then(function(){a.removeClass(p.expanded),a.css({display:"",height:""}),e.resolve({success:!0})})}),e.promise}var p={expanded:"expanded",expandAnimation:"expand-animation",collapseAnimation:"collapse-animation"},g=i.find("a"),v=[],h=/\(.*\)/g;angular.forEach(g,function(e){var t=angular.element(e).attr("ui-sref");angular.isUndefined(t)||(t=t.replace(h,""),v.push(t))}),r.setToggleItem(i,o),i.children(".ms-nav-button").on("click",l),o.$on("$destroy",function(){i.children(".ms-nav-button").off("click")}),o.$on("msNav::collapse",function(){var e=r.getLockedItems(),t=!1;angular.forEach(e,function(e){angular.equals(e.scope,o)&&(t=!0)}),t||u().then(function(){r.enable()})}),o.$on("msNav::forceCollapse",function(){u().then(function(){r.enable()})}),o.$on("msNav::expandMatchingToggles",function(){var e=a.current.name,t=!1;angular.forEach(v,function(n){e===n&&(t=!0)}),t?m():u()}),o.$on("msNav::pushToLockedList",function(){r.setLockedItem(i,o)})}}}}t.$inject=["$document","$rootScope","msNavFoldService"],a.$inject=["$rootScope","$mdComponentRegistry","msNavFoldService"],s.$inject=["$rootScope","$q","$animate","$state"],angular.module("app.core").factory("msNavFoldService",e).directive("msNavIsFolded",t).controller("MsNavController",n).directive("msNav",a).directive("msNavTitle",o).directive("msNavButton",i).directive("msNavToggle",s)}(),function(){"use strict";function e(){function e(e,t){if(angular.isString(e)){for(var n=e.split("."),o=n[n.length-1],r=a(n),l=!1,d=0;d1&&a.sort(o),a.length>0&&n(a)}}function a(e){var t=r;if(1===e.length)return t;e.pop();for(var n=0;n0&&(t=t.concat(v(e[n].children)))}return t}var h=null,b=null,f=null,E=null;return{saveItem:e,deleteItem:t,sort:n,clearNavigation:a,setActiveItem:o,getActiveItem:i,getNavigation:s,getFlatNavigation:l,setNavigationScope:d,setFolded:c,getFolded:m,setFoldedOpen:u,getFoldedOpen:p,toggleFolded:g}}}function t(e,t){function n(){angular.element("body").toggleClass("ms-navigation-horizontal-mobile-menu-active")}var a=this;e.root?a.navigation=t.getNavigation(e.root):a.navigation=t.getNavigation(),a.toggleHorizontalMobileMenu=n,function(){t.sort()}()}function n(e,t,n,a){return{restrict:"E",scope:{folded:"=",root:"@"},controller:"MsNavigationController as vm",templateUrl:"app/core/directives/ms-navigation/templates/vertical.html",transclude:!0,compile:function(o){return o.addClass("ms-navigation"),function(o,i){function s(t){if(a.setFolded(t),t)e.$broadcast("msNavigation::collapse"),u.addClass("ms-navigation-folded"),r();else{var n=a.getActiveItem();n&&n.scope.$emit("msNavigation::stateMatched"),u.removeClass("ms-navigation-folded ms-navigation-folded-open"),d()}}function r(){i.parent().append(p),t(function(){p.on("mouseenter touchstart",c)})}function l(){u.find("#main").append(g),g.on("mouseenter touchstart",m)}function d(){g.remove()}function c(e){e&&e.preventDefault(),a.setFoldedOpen(!0);var t=a.getActiveItem();t&&t.scope.$emit("msNavigation::stateMatched"),u.addClass("ms-navigation-folded-open"),p.remove(),l()}function m(t){t&&t.preventDefault(),a.setFoldedOpen(!1),e.$broadcast("msNavigation::collapse"),u.removeClass("ms-navigation-folded-open"),g.remove(),r()}var u=angular.element("body"),p=angular.element('
'),g=angular.element('
'),v=n("navigation");a.setNavigationScope(o),function(){null===a.getFolded()&&a.setFolded(o.folded),a.getFolded()&&(t(function(){e.$broadcast("msNavigation::collapse")}),u.addClass("ms-navigation-folded"),r())}(),o.$watch(function(){return v.isLockedOpen()},function(t,n){if(!angular.isUndefined(t)&&!angular.equals(t,n)&&a.getFolded())if(t)e.$broadcast("msNavigation::collapse");else{var o=a.getActiveItem();o&&o.scope.$emit("msNavigation::stateMatched")}}),o.$watch("folded",function(e,t){angular.isUndefined(e)||angular.equals(e,t)||s(e)}),o.toggleFolded=function(){s(!a.getFolded())},o.$on("$stateChangeStart",function(){v.close()}),o.$on("$destroy",function(){g.off("mouseenter touchstart"),p.off("mouseenter touchstart")})}}}}function a(e,t,n,a,o,i){function s(){m.collapsed?m.expand():m.collapse()}function r(){var t=m.element.children("ul"),n=t[0].offsetHeight;e.$evalAsync(function(){m.collapsed=!0,m.element.addClass("collapsing"),a.animate(t,{display:"block",height:n+"px"},{height:"0px"},m.animateHeightClass).then(function(){t.css({display:"",height:""}),m.element.removeClass("collapsing")}),e.$broadcast("msNavigation::collapse")})}function l(){var t=m.element.children("ul");t.css({position:"absolute",visibility:"hidden",display:"block",height:"auto"});var o=t[0].offsetHeight;t.css({position:"",visibility:"",display:"",height:""}),e.$evalAsync(function(){m.collapsed=!1,m.element.addClass("expanding"),a.animate(t,{display:"block",height:"0px"},{height:o+"px"},m.animateHeightClass).then(function(){t.css({height:""}),m.element.removeClass("expanding")}),n.$broadcast("msNavigation::collapse",m.node._path)})}function d(){return m.node.class}function c(){return!(!angular.isDefined(m.node.hidden)||!angular.isFunction(m.node.hidden))&&m.node.hidden()}var m=this;m.element=t,m.node=e.node,m.hasChildren=void 0,m.collapsed=void 0,m.collapsable=void 0,m.group=void 0,m.animateHeightClass="animate-height",m.toggleCollapsed=s,m.collapse=r,m.expand=l,m.getClass=d,m.isHidden=c,function(){if(m.hasChildren=m.node.children.length>0,m.group=!(!angular.isDefined(m.node.group)||!0!==m.node.group),!m.hasChildren||m.group?m.collapsable=!1:m.collapsable=!(!angular.isUndefined(m.node.collapsable)&&"boolean"==typeof m.node.collapsable&&!0!==m.node.collapsable),m.collapsable?m.collapsed=!(!angular.isUndefined(m.node.collapsed)&&"boolean"==typeof m.node.collapsed&&!0!==m.node.collapsed):m.collapsed=!1,m.node.state===o.current.name||o.includes(m.node.state)){if(angular.isDefined(m.node.stateParams)&&angular.isDefined(o.params)&&!angular.equals(m.node.stateParams,o.params))return;e.$emit("msNavigation::stateMatched"),i.setActiveItem(m.node,e)}e.$on("msNavigation::stateMatched",function(){m.collapsable&&m.collapsed&&e.$evalAsync(function(){m.collapsed=!1})}),e.$on("msNavigation::collapse",function(e,t){if(!m.collapsed&&m.collapsable)if(angular.isUndefined(t))m.collapse();else{var n=t.split("."),a=[],o=i.getActiveItem();if(o&&(a=o.node._path.split(".")),n.indexOf(m.node._id)>-1)return;if(a.indexOf(m.node._id)>-1)return;m.collapse()}}),e.$on("$stateChangeSuccess",function(){if(m.node.state===o.current.name){if(angular.isDefined(m.node.stateParams)&&angular.isDefined(o.params)&&!angular.equals(m.node.stateParams,o.params))return;i.setActiveItem(m.node,e),n.$broadcast("msNavigation::collapse",m.node._path)}if(o.includes(m.node.state)){if(angular.isDefined(m.node.stateParams)&&angular.isDefined(o.params)&&!angular.equals(m.node.stateParams,o.params))return;e.$emit("msNavigation::stateMatched")}})}()}function o(){return{restrict:"A",bindToController:{node:"=msNavigationNode"},controller:"MsNavigationNodeController as vm",compile:function(e){return e.addClass("ms-navigation-node"),function(e,t,n,a){t.addClass(a.getClass()),a.group&&t.addClass("group")}}}}function i(){return{restrict:"A",require:"^msNavigationNode",compile:function(e){return e.addClass("ms-navigation-item"),function(e,t,n,a){a.collapsable&&t.on("click",a.toggleCollapsed),e.$on("$destroy",function(){t.off("click")})}}}}function s(e){return{restrict:"E",scope:{root:"@"},controller:"MsNavigationController as vm",templateUrl:"app/core/directives/ms-navigation/templates/horizontal.html",transclude:!0,compile:function(t){return t.addClass("ms-navigation-horizontal"),function(t){e.setNavigationScope(t)}}}}function r(e,t,n,a,o){function i(){return s.node.class}var s=this;s.element=t,s.node=e.node,s.hasChildren=void 0,s.group=void 0,s.getClass=i,function(){if(s.isActive=!1,s.hasChildren=s.node.children.length>0,s.group=!(!angular.isDefined(s.node.group)||!0!==s.node.group),s.node.state===a.current.name||a.includes(s.node.state)){if(angular.isDefined(s.node.stateParams)&&angular.isDefined(a.params)&&!angular.equals(s.node.stateParams,a.params))return;e.$emit("msNavigation::stateMatched"),o.setActiveItem(s.node,e)}e.$on("msNavigation::stateMatched",function(){s.hasChildren&&e.$evalAsync(function(){s.isActive=!0})}),e.$on("msNavigation::clearActive",function(){if(s.hasChildren){var t=[],n=o.getActiveItem();n&&(t=n.node._path.split(".")),t.indexOf(s.node._id)>-1?e.$evalAsync(function(){s.isActive=!0}):e.$evalAsync(function(){s.isActive=!1})}}),e.$on("$stateChangeSuccess",function(){if(s.node.state===a.current.name||a.includes(s.node.state)){if(angular.isDefined(s.node.stateParams)&&angular.isDefined(a.params)&&!angular.equals(s.node.stateParams,a.params))return;o.setActiveItem(s.node,e),n.$broadcast("msNavigation::clearActive")}})}()}function l(){return{restrict:"A",bindToController:{node:"=msNavigationHorizontalNode"},controller:"MsNavigationHorizontalNodeController as vm",compile:function(e){return e.addClass("ms-navigation-horizontal-node"),function(e,t,n,a){t.addClass(a.getClass()),a.group&&t.addClass("group")}}}}function d(e){return{restrict:"A",require:"^msNavigationHorizontalNode",compile:function(t){return t.addClass("ms-navigation-horizontal-item"),function(t,n,a,o){function i(){o.hasChildren&&!e("gt-md")&&n.toggleClass("expanded")}n.on("click",i),t.$on("$destroy",function(){n.off("click")})}}}}t.$inject=["$scope","msNavigationService"],n.$inject=["$rootScope","$timeout","$mdSidenav","msNavigationService"],a.$inject=["$scope","$element","$rootScope","$animate","$state","msNavigationService"],s.$inject=["msNavigationService"],r.$inject=["$scope","$element","$rootScope","$state","msNavigationService"],d.$inject=["$mdMedia"],angular.module("app.core").provider("msNavigationService",e).controller("MsNavigationController",t).directive("msNavigation",n).controller("MsNavigationNodeController",a).directive("msNavigationNode",o).directive("msNavigationItem",i).directive("msNavigationHorizontal",s).controller("MsNavigationHorizontalNodeController",r).directive("msNavigationHorizontalNode",l).directive("msNavigationHorizontalItem",d)}(),function(){"use strict";function e(e,t,n,a,o,i,s,r,l,d){function c(e){switch(e){case"ringing":$.conf.ringingMute&&$.soundPlayer.pause(),$.conf.ringingId&&$.soundPlayer.setSinkId($.conf.ringingId).catch(function(e){console.info(e.message,$.conf.ringingId)});break;case"speaker":$.conf.speakerMute&&$.remotePlayer.pause(),$.conf.speakerId&&$.soundPlayer.setSinkId($.conf.speakerId).catch(function(e){console.info(e.message,$.conf.speakerId)});break;case"microphone":if($.conf.microphoneMute)for(var t=0;t<$.sessions.length;t+=1)$.sessions[t].mute();break;default:console.log("unknown device")}}function m(e,t,n){$.calls.unshift({target:e,fullname:n||e,inbound:t,time:moment().format("HH:mm")}),$.calls.length>50&&$.calls.pop()}function u(){return"chrome"===$.conf.browserName.toLowerCase()||"opera"===$.conf.browserName.toLowerCase()||"safari"===$.conf.browserName.toLowerCase()}function p(){return $.conf.license&&$.conf.isWebRTCSupported&&$.conf.hasMicrophone&&$.conf.hasSpeakers&&"https"===$.conf.protocol&&u()}function g(){G.webrtc=_.pick($.conf,q),i.localStorage.setItem("motion2.user:"+$.conf.id,JSON.stringify(G))}function v(e){d.create("Incoming call from: ",e.user,null,function(){e.answer($.sessionConf)},function(){e.terminate()}).then(function(t){e.notification=t}).catch(function(e){console.error(e)})}function h(){c("ringing"),c("speaker"),g(),$.ua.on("registered",function(){console.log("registered"),n(function(){$.registered=!0})}),$.ua.on("unregistered",function(){console.log("unregistered"),n(function(){$.registered=!1})}),$.ua.on("newRTCSession",function(e){switch(console.log("newRTCSession"),e.originator){case"local":e.session.outgoing=!0,e.session.name=e.request.ruri.user,e.session.user=e.request.ruri.user,m(e.session.user,!1);break;case"remote":e.session.incoming=!0,e.session.name=e.request.from.display_name,e.session.user=e.request.from.uri.user,v(e.session),m(e.session.user,!0),$.conf.autoAnswer&&n(function(){e.session.isInProgress()&&(e.session.autoAnswer=!0,$.conf.microphoneId?$.sessionConf.mediaConstraints.audio={deviceId:$.conf.microphoneId}:$.sessionConf.mediaConstraints.audio=!0,e.session.answer($.sessionConf))},$.conf.autoAnswerDelay?1e3*$.conf.autoAnswerDelay:0)}e.session.call_id=e.request.call_id,e.session.on("progress",function(e){console.log("progress");var t=this,n=!1;switch(e.originator){case"local":$.conf.ringingMute||($.soundPlayer.setAttribute("src","assets/ms-phonebar/sounds/incoming-call.ogg"),n=!0);break;case"remote":$.putOtherCallsOnHold(t),$.soundPlayer.setAttribute("src","assets/ms-phonebar/sounds/outgoing-call.ogg"),n=!0}n&&($.soundPlayer.loop="loop",$.soundPlayer.play().catch(function(e){console.log(e.message)}))}),e.session.on("confirmed",function(){console.log("confirmed");var e=this;return n(function(){e.confirmed=!0}),$.soundPlayer.pause(),$.soundPlayer.loop=null,$.putOtherCallsOnHold(e),$.remotePlayer.srcObject=e.connection.getRemoteStreams()[0],c("speaker"),c("microphone"),e.autoAnswer&&($.soundPlayer.setAttribute("src","assets/ms-phonebar/sounds/beep.ogg"),$.soundPlayer.play().catch(function(e){console.log(e.message)})),l.rpc.getVoiceChannels().$promise.then(function(t){var n=_.find(t.rows,function(t){return t.sipcalllinkedid===e.call_id?t:t.sipcalluniqueid===e.call_id?t:null});n&&(e.monitor=n.monitor,e.uniqueid=n.uniqueid,e.monitors=n.monitors)}).catch(function(e){console.error(e)})}),e.session.on("hold",function(e){var t=this;"local"===e.originator&&n(function(){t.localHold=!0})}),e.session.on("unhold",function(e){var t=this;"local"===e.originator&&n(function(){t.localHold=!1})}),e.session.on("ended",function(){console.log("ended");var e=this;n(function(){_.remove($.sessions,{id:e.id})})}),e.session.on("failed",function(){console.log("failed");var e=this;$.soundPlayer.pause(),$.soundPlayer.loop=null,e.notification&&e.notification.close(),n(function(){_.remove($.sessions,{id:e.id})})}),n(function(){$.sessions.push(e.session)})}),DetectRTC.load(function(){$.conf.hasMicrophone=DetectRTC.hasMicrophone,$.conf.hasSpeakers="Chrome"!==DetectRTC.browser.name&&"Edge"!==DetectRTC.browser.name&&"Opera"!==DetectRTC.browser.name||DetectRTC.hasSpeakers,$.conf.isWebRTCSupported=DetectRTC.isWebRTCSupported,$.conf.osName=DetectRTC.osName,$.conf.osVersion=DetectRTC.osVersion,$.conf.browserName=DetectRTC.browser.name,$.conf.browserVersion=DetectRTC.browser.version,p()?$.ua.start():$.conf.license||r.warning({title:s.instant("TOOLBAR.WARNING"),msg:s.instant("TOOLBAR.WEBRTC_LICENSE_NOT_ENABELD"),clickToClose:!0,showClose:!0,shake:!1,timeout:!1,position:"bottom-right"})})}function b(){$.target="",document.getElementById("ms-target").blur(),document.getElementById("ms-target").value="",e.$broadcast("angucomplete-alt:clearInput","ms-target-wrap")}function f(t){t?/^(\w|\.|\+|#|\*|\(|\)|\s|\-)*$/.test(t)?($.target=t,e.$broadcast("angucomplete-alt:changeInput","ms-target-wrap",$.target)):$.target?e.$broadcast("angucomplete-alt:changeInput","ms-target-wrap",$.target):b():b()}function E(e){e&&($.target=e.originalObject.target,$.call(),b())}function A(){$.ua.stop()}function y(e,t){t.target&&($.target=t.target,$.call())}function S(e){switch(console.log("toggleVolume",e),e){case"ringing":$.conf.ringingMute=!$.conf.ringingMute;break;case"speaker":$.conf.speakerMute?($.conf.speakerMute=!1,$.remotePlayer.play().catch(function(e){console.log(e.message)})):($.conf.speakerMute=!0,$.remotePlayer.pause());break;case"microphone":$.conf.microphoneMute=!$.conf.microphoneMute;for(var t=0;t<$.sessions.length;t+=1)$.conf.microphoneMute?$.sessions[t].mute():$.sessions[t].unmute();break;default:console.log("unknown device")}g()}function T(e){a.show({controller:"SettingsController",controllerAs:"vm",templateUrl:"assets/ms-phonebar/settings/settings.html",parent:angular.element(t.body),targetEvent:e,clickOutsideToClose:!0,resolve:{devices:function(){return navigator.mediaDevices.enumerateDevices()}},locals:{conf:$.conf}}).then(function(e){e&&($.conf=e,c("ringing"),c("speaker"),g())})}function C(e){a.show({controller:"RecordDialogController",controllerAs:"vm",templateUrl:"assets/ms-phonebar/record/dialog.html",parent:angular.element(t.body),clickOutsideToClose:!0,locals:{session:e,sessions:$.sessions}})}function x(e){console.log("selectSession",e),e.unhold(),$.putOtherCallsOnHold(e),$.remotePlayer.srcObject=e.connection.getRemoteStreams()[0]}function O(e){e.answer($.sessionConf)}function w(e){var t=a.prompt().title("Transfer").textContent("Type the target").placeholder("Target").ariaLabel("Target").ok("Transfer").cancel("Cancel");a.show(t).then(function(t){e.refer(t,{eventHandlers:{requestSucceeded:function(){o.show(o.simple().textContent("requestSucceeded").position("top right").hideDelay(3e3)),e.terminate()},requestFailed:function(){o.show(o.simple().textContent("requestFailed").position("top right").hideDelay(3e3)),e.terminate()}}})})}function I(e){a.show({controller:"ReferAttendedDialogController",controllerAs:"vm",templateUrl:"assets/ms-phonebar/referAttended/dialog.html",parent:angular.element(t.body),clickOutsideToClose:!0,locals:{session:e,sessions:_.reject($.sessions,{id:e.id})}})}function R(e){switch(e.key.toLowerCase()){case"0":case"1":case"2":case"3":case"4":case"5":case"6":case"7":case"8":case"9":case"*":case"#":$.type(e.key);break;case"enter":$.call()}}function N(t,n){var a=t;switch($.target||($.target=""),n&&($.target+=t,e.$broadcast("angucomplete-alt:changeInput","ms-target-wrap",$.target)),t){case"*":a="asterisk";break;case"#":a="pound"}$.conf.enableDtmfTone&&($.soundPlayer.setAttribute("src","assets/ms-phonebar/sounds/dialpad/"+a+".ogg"),$.soundPlayer.play().catch(function(e){console.log(e.message)}));for(var o=0;o<$.sessions.length;o+=1)$.sessions[o].isEstablished()&&!$.sessions[o].isOnHold().local&&$.sessions[o].sendDTMF(t)}function D(e){e.hold()}function L(e){e.unhold()}function M(e){e.terminate()}function k(){if($.target&&$.target!==$.conf.name&&$.target!==$.conf.internal){$.conf.microphoneId?$.sessionConf.mediaConstraints.audio={deviceId:$.conf.microphoneId}:$.sessionConf.mediaConstraints.audio=!0;var e=$.target.replace(/ /g,"");e=(e=e.replace(/\(/g,"")).replace(/\)/g,""),$.ua.call(e,$.sessionConf)}b()}function U(e){if($.sessions.length>1)for(var t=0;t<$.sessions.length;t+=1)$.sessions[t].id===e.id||$.sessions[t].isOnHold().remote||$.sessions[t].hold()}function F(){$.showDialpad=!$.showDialpad}function P(){$.showDialpad=!1}var $=this,q=["ringingId","speakerId","microphoneId","ringingVolume","speakerVolume","microphoneVolume","ringingMute","speakerMute","microphoneMute"],G=JSON.parse(i.localStorage.getItem("motion2.user:"+$.conf.id))||{webrtc:{ringingVolume:.5,speakerVolume:.5,microphoneVolume:1,ringingMute:!1,speakerMute:!1,microphoneMute:!1}};$.direction="right",$.selectedMode="md-scale",$.target="",$.showDialpad=!1,$.soundPlayer=document.createElement("audio"),$.remotePlayer=angular.element(document.querySelector("#"+$.conf.remotePlayerId))[0],$.soundPlayer.volume=1,$.sessionConf={mediaConstraints:{audio:!0,video:!1}},$.sessions=[],$.calls=[],$.ua=new JsSIP.UA({sockets:[new JsSIP.WebSocketInterface("wss://"+$.conf.host+":8089/ws")],uri:new JsSIP.URI("sip",$.conf.name,$.conf.host,5060,null,null).toString(),authorization_user:$.conf.name,ha1:$.conf.ha1,realm:$.conf.realm,user_agent:$.conf.ua,session_timers_refresh_method:"invite",register_expires:$.conf.phoneBarExpires||60,register:!0}),$.conf=_.merge(G.webrtc,$.conf),t.bind("keyup",function(e){switch(e.keyCode){case 27:n(function(){$.showDialpad=!1})}}),$.$onInit=h,$.type=N,$.call=k,$.hold=D,$.refer=w,$.record=C,$.unhold=L,$.answer=O,$.terminate=M,$.selectSession=x,$.typeWrapper=R,$.toggleDialpad=F,$.referAttended=I,$.toggleVolume=S,$.closeDialpad=P,$.putOtherCallsOnHold=U,$.targetChanged=f,$.targetSelected=E,e.$on("webrtc::settings",T),e.$on("webrtc::logout",A),e.$on("webrtc::call",y)}function t(){return{restrict:"E",scope:{conf:"="},require:"msPhonebar",controller:"MsPhonebarController",controllerAs:"vm_pb",bindToController:!0,templateUrl:"assets/ms-phonebar/ms-phonebar.html"}}e.$inject=["$scope","$document","$timeout","$mdDialog","$mdToast","$window","$translate","toasty","api","motNotification"],angular.module("app.core").controller("MsPhonebarController",e).directive("msPhonebar",t)}(),function(){"use strict";function e(e){return{restrict:"C",controller:["$scope","$element",function(t,n){function a(){n.css("display","inline"),e(o,1e3)}function o(){n.css("display","none"),e(a,1e3)}a()}],replace:!0}}function t(e,t,n,a,o){function i(){function e(){return Math.floor(65536*(1+Math.random())).toString(16).substring(1)}return e()+e()+"-"+e()+"-"+e()+"-"+e()+"-"+e()+e()+e()}function s(e,a){console.log("startMonitor");var o=t.defer(),i=(a||e.filename.replace(/^.*[\\\/]/,"")).split(".")[0];return n.rpc.startMonitor({uniqueid:c.session.uniqueid,filename:i,format:"wav"}).$promise.then(function(t){e.filename=i+".wav",e.mixmonitorid=t.mixmonitorid,e.status="rec",c.session.monitor=!0,o.resolve(e)}).catch(function(e){o.reject(e)}),o.promise}function r(e){return console.log("stopMonitor"),n.rpc.stopMonitor({uniqueid:c.session.uniqueid,mixmonitorid:e.mixmonitorid}).$promise.then(function(t){e.status="pause",c.session.monitor=_.includes(c.session.monitors,{status:"rec"})}).catch(function(e){console.error(e)})}function l(){var t=e.prompt({skipHide:!0}).title("Start new recording").textContent("Type the file name.").placeholder("File name").ariaLabel("File name").initialValue(i()).ok("Start").cancel("Cancel");e.show(t).then(function(e){return s({},e)}).then(function(e){c.session.monitors.push(e)})}function d(){e.hide()}var c=this;c.title="Record",c.sessions=a,c.session=o,c.closeDialog=d,c.addRecording=l,c.stop=r,c.start=s}e.$inject=["$timeout"],t.$inject=["$mdDialog","$q","api","sessions","session"],angular.module("app.core").directive("msBlink",e).controller("RecordDialogController",t)}(),function(){"use strict";function e(e,t,n,a){function o(){var e,a,o=_.find(n,function(e){if(e.user===s.target)return e});o.outgoing?(e=o,a=s.session):(e=s.session,a=o),a.refer(e.user,{replaces:e,eventHandlers:{requestSucceeded:function(e){t.show(t.simple().textContent("requestSucceeded").position("top right").hideDelay(3e3)),i(),a.terminate()},requestFailed:function(e){t.show(t.simple().textContent("requestFailed").position("top right").hideDelay(3e3)),i(),a.terminate()}}})}function i(t){e.hide(t)}var s=this;s.title="Refer Attended",s.sessions=n,s.session=a,s.sessionTarget=null,s.closeDialog=i,s.transfer=o}e.$inject=["$mdDialog","$mdToast","sessions","session"],angular.module("app.core").controller("ReferAttendedDialogController",e)}(),function(){"use strict";function e(e,t,n){function a(){return"chrome"===r.conf.browserName.toLowerCase()||"opera"===r.conf.browserName.toLowerCase()||"safari"===r.conf.browserName.toLowerCase()}function o(e,n,a){var o;if(t[a]){if(o=_.find(e,function(e){return e.deviceId===t[a]}))return o.deviceId;var i=_.findIndex(e,function(e){return e.kind===n&&"default"!==e.deviceId});if(i>=0)return e[i].deviceId}else(o=_.find(e,function(e){return e.kind===n&&"default"!==e.deviceId}))&&(t[a]=o.deviceId);return t[a]||null}function i(){e.hide(r.conf)}function s(){e.hide()}var r=this;t.ringingId=o(n,"audiooutput","ringingId"),t.speakerId=o(n,"audiooutput","speakerId"),t.microphoneId=o(n,"audioinput","microphoneId"),t.ringingVolume=t.ringingVolume||.5,t.speakerVolume=t.speakerVolume||.5,t.microphoneVolume=t.microphoneVolume||1,t.ringingMute=t.ringingMute||!1,t.speakerMute=t.speakerMute||!1,t.microphoneMute=t.microphoneMute||!1,r.conf=angular.copy(t),r.devices=n,r.saveSettings=i,r.closeDialog=s,r.isCompatibleBrowser=a}e.$inject=["$mdDialog","conf","devices"],angular.module("app.toolbar").controller("SettingsController",e)}(),function(){"use strict";function e(){return{restrict:"A",scope:{msRandomClass:"="},link:function(e,t){var n=e.msRandomClass[Math.floor(Math.random()*e.msRandomClass.length)];t.addClass(n)}}}angular.module("app.core").directive("msRandomClass",e)}(),function(){"use strict";function e(){return{restrict:"A",link:function(e,t){var n=angular.element('
');t.after(n),n.append(t)}}}angular.module("app.core").directive("msResponsiveTable",e)}(),function(){"use strict";function e(){function e(e){t=angular.extend({},t,e)}var t={wheelSpeed:1,wheelPropagation:!1,swipePropagation:!0,minScrollbarLength:null,maxScrollbarLength:null,useBothWheelAxes:!1,useKeyboard:!0,suppressScrollX:!1,suppressScrollY:!1,scrollXMarginOffset:0,scrollYMarginOffset:0,stopPropagationOnClick:!0};this.config=e,this.$get=function(){function e(){return t}return{getConfig:e}}}function t(e,t,n,a){return{restrict:"AE",compile:function(o){if(!(a.getConfig("disableCustomScrollbars")||a.getConfig("disableCustomScrollbarsOnMobile")&&n.isMobile()))return o.addClass("ms-scroll"),function(n,a,o){function i(){PerfectScrollbar.update(a[0])}var s={};o.msScroll&&(s=n.$eval(o.msScroll)),s=angular.extend({},t.getConfig(),s),e(function(){PerfectScrollbar.initialize(a[0],s)},0),a.on("mouseenter",i),n.$watch(function(){return a.prop("scrollHeight")},function(e,t){angular.isUndefined(e)||angular.equals(e,t)||i()}),n.$watch(function(){return a.prop("scrollWidth")},function(e,t){angular.isUndefined(e)||angular.equals(e,t)||i()}),n.$on("$destroy",function(){a.off("mouseenter"),PerfectScrollbar.destroy(a[0])})}}}}t.$inject=["$timeout","msScrollConfig","msUtils","motionConfig"],angular.module("app.core").provider("msScrollConfig",e).directive("msScroll",t)}(),function(){"use strict";function e(e,t,n){function a(e){if(!p.collapsed){var t=null===e;(angular.isArray(e)||t)&&(p.selectedResultIndex=0,p.results=e)}}function o(){p.collapsed=!1,e.expand(),p.onExpand&&angular.isFunction(p.onExpand)&&p.onExpand()}function i(){p.query="",p.populateResults(null),p.collapsed=!0,e.collapse(),p.onCollapse&&angular.isFunction(p.onCollapse)&&p.onCollapse()}function s(){g&&p.collapse()}function r(e){e.preventDefault()}function l(e){var t=e.keyCode;switch([27,38,40].indexOf(t)>-1&&e.preventDefault(),t){case 13:if(!p.results)return;p.handleResultClick(p.results[p.selectedResultIndex]);break;case 27:p.collapse();break;case 38:p.selectedResultIndex-1>=0&&(p.selectedResultIndex--,p.ensureSelectedResultIsVisible());break;case 40:if(!p.results)return;p.selectedResultIndex+1a&&e.scrollTop(a),o>e.height()+e.scrollTop()&&e.scrollTop(o-e.height())}}var p=this;p.collapsed=!0,p.query="",p.queryOptions={debounce:p.debounce||0};var g=!(!p.collapseOnBlur||"true"!=p.collapseOnBlur);p.resultsLoading=!1,p.results=null,p.selectedResultIndex=0,p.ignoreMouseEvents=!1,p.populateResults=a,p.expand=o,p.collapse=i,p.blurCollapse=s,p.absorbEvent=r,p.handleKeydown=l,p.handleMouseenter=d,p.temporarilyIgnoreMouseEvents=c,p.handleResultClick=m,p.ensureSelectedResultIsVisible=u,function(){e.$watch("MsSearchBar.query",function(t,n){if(!angular.isUndefined(t)&&!angular.equals(t,n)&&!p.collapsed){var a=e.$parent.$eval(p.onSearch,{query:t}),o=angular.isArray(a),i=a&&!!a.then;o&&p.populateResults(a),i&&(p.resultsLoading=!0,a.then(function(e){p.populateResults(e)},function(){p.populateResults([])}).finally(function(){p.resultsLoading=!1}))}})}()}function t(e){return{restrict:"E",scope:{},require:"msSearchBar",controller:"MsSearchBarController as MsSearchBar",bindToController:{debounce:"=?",onSearch:"@",onResultClick:"&?",onExpand:"&?",onCollapse:"&?",collapseOnBlur:"@"},templateUrl:"app/core/directives/ms-search-bar/ms-search-bar.html",compile:function(t){return t.addClass("ms-search-bar"),function(t,n){function a(){n.addClass("expanded"),s.addClass("ms-search-bar-expanded"),i.focus()}function o(){n.removeClass("expanded"),s.removeClass("ms-search-bar-expanded")}var i,s=e.find("body");t.collapse=o,t.expand=a,function(){i=n.find("#ms-search-bar-input")}()}}}}e.$inject=["$scope","$element","$timeout"],t.$inject=["$document"],angular.module("app.core").controller("MsSearchBarController",e).directive("msSearchBar",t)}(),function(){"use strict";function e(e,t,n,a,o,i){function s(){for(var e=[],t=i.getFlatNavigation(),n=o.defer(),s=0;s-1)return!0});for(var r=0;r0&&(e=f.shortcuts);return f.selectedResultIndex=0,a(function(){n.resolve(e)},250),n.promise}function r(){var e=o.defer(),n=angular.fromJson(t.get("motion.shortcuts"));return angular.isUndefined(n)&&(n=[{title:"Agents",icon:"icon-account-multiple",state:"app.staff.agents",weight:5,children:[],uisref:"app.staff.agents",hasShortcut:!0},{title:"License",icon:"icon-cog",state:"app.settings.license",weight:10,children:[],uisref:"app.settings.license",hasShortcut:!0}],t.put("motion.shortcuts",angular.toJson(n))),e.resolve(n),e.promise}function l(){var e=o.defer();return t.put("motion.shortcuts",angular.toJson(f.shortcuts)),a(function(){e.resolve({success:!0})},250),e.promise}function d(e){e.hasShortcut=!0,f.shortcuts.push(e),f.saveShortcuts()}function c(e){e.hasShortcut=!1;for(var t=0;t=f.shortcuts.length&&(f.selectedResultIndex=f.shortcuts.length-1)));f.saveShortcuts()}function m(e){e.hasShortcut?f.removeShortcut(e):f.addShortcut(e)}function u(e){e.preventDefault()}function p(e){var t=e.keyCode;switch([38,40].indexOf(t)>-1&&e.preventDefault(),t){case 13:f.handleResultClick(f.results[f.selectedResultIndex]);break;case 38:f.selectedResultIndex-1>=0&&(f.selectedResultIndex--,f.ensureSelectedResultIsVisible());break;case 40:f.selectedResultIndex+1a&&e.scrollTop(a),o>e.height()+e.scrollTop()&&e.scrollTop(o-e.height())}}function b(){f.mobileBarActive=!f.mobileBarActive}var f=this;f.query="",f.queryOptions={debounce:300},f.resultsLoading=!1,f.selectedResultIndex=0,f.ignoreMouseEvents=!1,f.mobileBarActive=!1,f.results=null,f.shortcuts=[],f.sortableOptions={ghostClass:"ghost",forceFallback:!0,fallbackClass:"dragging",onSort:function(){f.saveShortcuts()}},f.populateResults=s,f.loadShortcuts=r,f.saveShortcuts=l,f.addShortcut=d,f.removeShortcut=c,f.handleResultClick=m,f.absorbEvent=u,f.handleKeydown=p,f.handleMouseenter=g,f.temporarilyIgnoreMouseEvents=v,f.ensureSelectedResultIsVisible=h,f.toggleMobileBar=b,function(){f.loadShortcuts().then(function(e){f.shortcuts=e,f.shortcuts.length>0&&(f.results=e)}),e.$watch("MsShortcuts.query",function(e,t){angular.isUndefined(e)||angular.equals(e,t)||(f.resultsLoading=!0,f.populateResults().then(function(e){f.results=e},function(){f.results=[]}).finally(function(){f.resultsLoading=!1}))})}()}function t(){return{restrict:"E",scope:{},require:"msShortcuts",controller:"MsShortcutsController as MsShortcuts",bindToController:{},templateUrl:"app/core/directives/ms-shortcuts/ms-shortcuts.html",compile:function(e){return e.addClass("ms-shortcuts"),function(e,t){}}}}e.$inject=["$scope","$cookies","$document","$timeout","$q","msNavigationService"],angular.module("app.core").controller("MsShortcutsController",e).directive("msShortcuts",t)}(),function(){"use strict";function e(){return{restrict:"A",require:"^mdSidenav",link:function(e,t,n,a){e.$watch(function(){return a.isOpen()&&!a.isLockedOpen()},function(e){angular.isUndefined(e)||(t.parent().toggleClass("full-height",e),angular.element("html").toggleClass("sidenav-open",e))})}}}angular.module("app.core").directive("msSidenavHelper",e)}(),function(){"use strict";function e(e){return{restrict:"E",link:function(t,n){var a=t.$on("msSplashScreen::remove",function(){e.leave(n).then(function(){a(),t=n=null})})}}}e.$inject=["$animate"],angular.module("app.core").directive("msSplashScreen",e)}(),function(){"use strict";function e(e){function t(e){S.orientation=e||"horizontal"}function n(e){S.mainForm=e}function a(e,t,n){var a={element:e,scope:t,form:n,stepNumber:t.step||S.steps.length+1,stepTitle:t.stepTitle,stepTitleTranslate:t.stepTitleTranslate};return S.steps.push(a),S.steps.sort(function(e,t){return e.stepNumber-t.stepNumber}),a}function o(){S.setCurrentStep(S.currentStepNumber)}function i(){e(function(){for(var e=0;e=1;t--)if(!b(t)){e=t;break}S.setCurrentStep(e)}function d(){for(var e=S.currentStepNumber+1,t=e;t<=S.steps.length;t++)if(!b(t)){e=t;break}S.setCurrentStep(e)}function c(){S.setCurrentStep(1)}function m(){S.setCurrentStep(S.steps.length)}function u(){return 1===S.currentStepNumber}function p(){return S.currentStepNumber===S.steps.length}function g(e){return A(e)?S.currentStepNumber===e:null}function v(e){if(!A(e))return null;for(var t=!1,n=1;nS.steps.length)}function y(){return S.mainForm.$valid}var S=this;S.mainForm=void 0,S.orientation="horizontal",S.steps=[],S.currentStep=void 0,S.currentStepNumber=1,S.setOrientation=t,S.registerMainForm=n,S.registerStep=a,S.setupSteps=o,S.resetForm=i,S.setCurrentStep=s,S.gotoStep=r,S.gotoPreviousStep=l,S.gotoNextStep=d,S.gotoFirstStep=c,S.gotoLastStep=m,S.isFirstStep=u,S.isLastStep=p,S.isStepCurrent=g,S.isStepDisabled=v,S.isStepOptional=h,S.isStepHidden=b,S.filterHiddenStep=f,S.isStepValid=E,S.isStepNumberValid=A,S.isFormValid=y}function t(){return{restrict:"A",scope:{},require:["form","msHorizontalStepper"],priority:1001,controller:"MsStepperController as MsStepper",bindToController:{model:"=ngModel"},transclude:!0,templateUrl:"app/core/directives/ms-stepper/templates/horizontal/horizontal.html",compile:function(e){return e.addClass("ms-stepper"),function(e,t,n,a){var o=a[0],i=a[1];i.setOrientation("horizontal"),i.registerMainForm(o),i.setupSteps()}}}}function n(){return{restrict:"E",require:["form","^msHorizontalStepper"],priority:1e3,scope:{step:"=?",stepTitle:"=?",stepTitleTranslate:"=?",optionalStep:"=?",hideStep:"=?"},compile:function(e){return e.addClass("ms-stepper-step"),function(e,t,n,a){var o=a[0],i=a[1];e.optionalStep=angular.isDefined(n.optionalStep),i.registerStep(t,e,o),t.hide()}}}}function a(e){return{restrict:"A",scope:{},require:["form","msVerticalStepper"],priority:1001,controller:"MsStepperController as MsStepper",bindToController:{model:"=ngModel"},transclude:!0,templateUrl:"app/core/directives/ms-stepper/templates/vertical/vertical.html",compile:function(t){return t.addClass("ms-stepper"),function(t,n,a,o){var i=o[0],s=o[1];e(function(){s.setOrientation("vertical"),s.registerMainForm(i),s.setupSteps()})}}}}function o(){return{restrict:"E",require:["form","^msVerticalStepper"],priority:1e3,scope:{step:"=?",stepTitle:"=?",stepTitleTranslate:"=?",optionalStep:"=?",hideStep:"=?"},transclude:!0,templateUrl:"app/core/directives/ms-stepper/templates/vertical/step/vertical-step.html",compile:function(e){return e.addClass("ms-stepper-step"),function(e,t,n,a){var o=a[0],i=a[1];e.optionalStep=angular.isDefined(n.optionalStep),e.stepInfo=i.registerStep(t,e,o),e.MsStepper=i,t.find(".ms-stepper-step-content").hide()}}}}e.$inject=["$timeout"],a.$inject=["$timeout"],angular.module("app.core").controller("MsStepperController",e).directive("msHorizontalStepper",t).directive("msHorizontalStepperStep",n).directive("msVerticalStepper",a).directive("msVerticalStepperStep",o)}(),function(){"use strict";function e(){function e(e){n.scrollEl=e}function t(){return n.scrollEl}var n=this;n.scrollEl=void 0,n.setScrollEl=e,n.getScrollEl=t}function t(){return{scope:{msTimeline:"=?",loadMore:"&?msTimelineLoadMore"},controller:"MsTimelineController",compile:function(e){return e.addClass("ms-timeline"),function(e,t,n,a){function o(){d.scrollTop()+d.height()+c>r.position().top&&(r.addClass("show"),s(),e.loadMore().then(function(){r.removeClass("show"),i()},function(){r.remove()}))}function i(){d.on("scroll",o)}function s(){d.off("scroll",o)}var r=angular.element('
');t.append(r);var l={scrollEl:"#content"};l=angular.extend(l,e.msTimeline,{});var d=angular.element(l.scrollEl);a.setScrollEl(d);var c=144;i(),e.$on("$destroy",function(){s()})}}}}function n(e,t){return{scope:!0,require:"^msTimeline",compile:function(n){return n.addClass("ms-timeline-item").addClass("hidden"),function(n,a,o,i){function s(e){var n=t.defer(),a=e.find("img");return a.length>0?a.on("load",function(){n.resolve("Image is loaded")}):n.resolve("No images"),n.promise}function r(){m.scrollTop()+m.height()>a.position().top+l&&(e(function(){c=!0}),m.off("scroll",r))}var l=72,d=!1,c=!1,m=i.getScrollEl();!function(){a.find("ms-card")?n.$on("msCard::cardTemplateLoaded",function(t,n){s(angular.element(n[0])).then(function(){e(function(){d=!0})})}):s(a).then(function(){e(function(){d=!0})}),m.on("scroll",r),r()}();var u=n.$watch(function(){return d&&c},function(e,t){angular.equals(e,t)||e&&(a.removeClass("hidden").addClass("animate"),u())},!0)}}}}n.$inject=["$timeout","$q"],angular.module("app.core").controller("MsTimelineController",e).directive("msTimeline",t).directive("msTimelineItem",n)}(),function(){"use strict";function e(){return{restrict:"E",scope:{ngModel:"="},controller:["$scope",function(e){e.timezone=[{name:"Europe/Andorra",utcOffset:60,offsetStr:"+01:00",countries:["AD"]},{name:"Asia/Dubai",utcOffset:240,offsetStr:"+04:00",countries:["AE","OM"]},{name:"Asia/Kabul",utcOffset:270,offsetStr:"+04:30",countries:["AF"]},{name:"Europe/Tirane",utcOffset:60,offsetStr:"+01:00",countries:["AL"]},{name:"Asia/Yerevan",utcOffset:240,offsetStr:"+04:00",countries:["AM"]},{name:"Antarctica/Rothera",utcOffset:-180,offsetStr:"-03:00",countries:["AQ"]},{name:"Antarctica/Palmer",utcOffset:-180,offsetStr:"-03:00",countries:["AQ"]},{name:"Antarctica/Mawson",utcOffset:300,offsetStr:"+05:00",countries:["AQ"]},{name:"Antarctica/Davis",utcOffset:420,offsetStr:"+07:00",countries:["AQ"]},{name:"Antarctica/Casey",utcOffset:480,offsetStr:"+08:00",countries:["AQ"]},{name:"Antarctica/Vostok",utcOffset:360,offsetStr:"+06:00",countries:["AQ"]},{name:"Antarctica/DumontDUrville",utcOffset:600,offsetStr:"+10:00",countries:["AQ"]},{name:"Antarctica/Syowa",utcOffset:180,offsetStr:"+03:00",countries:["AQ"]},{name:"Antarctica/Troll",utcOffset:0,offsetStr:"+00:00",countries:["AQ"]},{name:"America/Argentina/Buenos_Aires",utcOffset:-180,offsetStr:"-03:00",countries:["AR"]},{name:"America/Argentina/Cordoba",utcOffset:-180,offsetStr:"-03:00",countries:["AR"]},{name:"America/Argentina/Salta",utcOffset:-180,offsetStr:"-03:00",countries:["AR"]},{name:"America/Argentina/Jujuy",utcOffset:-180,offsetStr:"-03:00",countries:["AR"]},{name:"America/Argentina/Tucuman",utcOffset:-180,offsetStr:"-03:00",countries:["AR"]},{name:"America/Argentina/Catamarca",utcOffset:-180,offsetStr:"-03:00",countries:["AR"]},{name:"America/Argentina/La_Rioja",utcOffset:-180,offsetStr:"-03:00",countries:["AR"]},{name:"America/Argentina/San_Juan",utcOffset:-180,offsetStr:"-03:00",countries:["AR"]},{name:"America/Argentina/Mendoza",utcOffset:-180,offsetStr:"-03:00",countries:["AR"]},{name:"America/Argentina/San_Luis",utcOffset:-180,offsetStr:"-03:00",countries:["AR"]},{name:"America/Argentina/Rio_Gallegos",utcOffset:-180,offsetStr:"-03:00",countries:["AR"]},{name:"America/Argentina/Ushuaia",utcOffset:-180,offsetStr:"-03:00",countries:["AR"]},{name:"Pacific/Pago_Pago",utcOffset:-660,offsetStr:"-11:00",countries:["AS","UM"]},{name:"Europe/Vienna",utcOffset:60,offsetStr:"+01:00",countries:["AT"]},{name:"Australia/Lord_Howe",utcOffset:660,offsetStr:"+11:00",countries:["AU"]},{name:"Antarctica/Macquarie",utcOffset:660,offsetStr:"+11:00",countries:["AU"]},{name:"Australia/Hobart",utcOffset:660,offsetStr:"+11:00",countries:["AU"]},{name:"Australia/Currie",utcOffset:660,offsetStr:"+11:00",countries:["AU"]},{name:"Australia/Melbourne",utcOffset:660,offsetStr:"+11:00",countries:["AU"]},{name:"Australia/Sydney",utcOffset:660,offsetStr:"+11:00",countries:["AU"]},{name:"Australia/Broken_Hill",utcOffset:630,offsetStr:"+10:30",countries:["AU"]},{name:"Australia/Brisbane",utcOffset:600,offsetStr:"+10:00",countries:["AU"]},{name:"Australia/Lindeman",utcOffset:600,offsetStr:"+10:00",countries:["AU"]},{name:"Australia/Adelaide",utcOffset:630,offsetStr:"+10:30",countries:["AU"]},{name:"Australia/Darwin",utcOffset:570,offsetStr:"+09:30",countries:["AU"]},{name:"Australia/Perth",utcOffset:480,offsetStr:"+08:00",countries:["AU"]},{name:"Australia/Eucla",utcOffset:525,offsetStr:"+08:45",countries:["AU"]},{name:"Asia/Baku",utcOffset:240,offsetStr:"+04:00",countries:["AZ"]},{name:"America/Barbados",utcOffset:-240,offsetStr:"-04:00",countries:["BB"]},{name:"Asia/Dhaka",utcOffset:360,offsetStr:"+06:00",countries:["BD"]},{name:"Europe/Brussels",utcOffset:60,offsetStr:"+01:00",countries:["BE"]},{name:"Europe/Sofia",utcOffset:120,offsetStr:"+02:00",countries:["BG"]},{name:"Atlantic/Bermuda",utcOffset:-240,offsetStr:"-04:00",countries:["BM"]},{name:"Asia/Brunei",utcOffset:480,offsetStr:"+08:00",countries:["BN"]},{name:"America/La_Paz",utcOffset:-240,offsetStr:"-04:00",countries:["BO"]},{name:"America/Noronha",utcOffset:-120,offsetStr:"-02:00",countries:["BR"]},{name:"America/Belem",utcOffset:-180,offsetStr:"-03:00",countries:["BR"]},{name:"America/Fortaleza",utcOffset:-180,offsetStr:"-03:00",countries:["BR"]},{name:"America/Recife",utcOffset:-180,offsetStr:"-03:00",countries:["BR"]},{name:"America/Araguaina",utcOffset:-180,offsetStr:"-03:00",countries:["BR"]},{name:"America/Maceio",utcOffset:-180,offsetStr:"-03:00",countries:["BR"]},{name:"America/Bahia",utcOffset:-180,offsetStr:"-03:00",countries:["BR"]},{name:"America/Sao_Paulo",utcOffset:-120,offsetStr:"-02:00",countries:["BR"]},{name:"America/Campo_Grande",utcOffset:-180,offsetStr:"-03:00",countries:["BR"]},{name:"America/Cuiaba",utcOffset:-180,offsetStr:"-03:00",countries:["BR"]},{name:"America/Santarem",utcOffset:-180,offsetStr:"-03:00",countries:["BR"]},{name:"America/Porto_Velho",utcOffset:-240,offsetStr:"-04:00",countries:["BR"]},{name:"America/Boa_Vista",utcOffset:-240,offsetStr:"-04:00",countries:["BR"]},{name:"America/Manaus",utcOffset:-240,offsetStr:"-04:00",countries:["BR"]},{name:"America/Eirunepe",utcOffset:-300,offsetStr:"-05:00",countries:["BR"]},{name:"America/Rio_Branco",utcOffset:-300,offsetStr:"-05:00",countries:["BR"]},{name:"America/Nassau",utcOffset:-300,offsetStr:"-05:00",countries:["BS"]},{name:"Asia/Thimphu",utcOffset:360,offsetStr:"+06:00",countries:["BT"]},{name:"Europe/Minsk",utcOffset:180,offsetStr:"+03:00",countries:["BY"]},{name:"America/Belize",utcOffset:-360,offsetStr:"-06:00",countries:["BZ"]},{name:"America/St_Johns",utcOffset:-210,offsetStr:"-03:30",countries:["CA"]},{name:"America/Halifax",utcOffset:-240,offsetStr:"-04:00",countries:["CA"]},{name:"America/Glace_Bay",utcOffset:-240,offsetStr:"-04:00",countries:["CA"]},{name:"America/Moncton",utcOffset:-240,offsetStr:"-04:00",countries:["CA"]},{name:"America/Goose_Bay",utcOffset:-240,offsetStr:"-04:00",countries:["CA"]},{name:"America/Blanc-Sablon",utcOffset:-240,offsetStr:"-04:00",countries:["CA"]},{name:"America/Toronto",utcOffset:-300,offsetStr:"-05:00",countries:["CA"]},{name:"America/Nipigon",utcOffset:-300,offsetStr:"-05:00",countries:["CA"]},{name:"America/Thunder_Bay",utcOffset:-300,offsetStr:"-05:00",countries:["CA"]},{name:"America/Iqaluit",utcOffset:-300,offsetStr:"-05:00",countries:["CA"]},{name:"America/Pangnirtung",utcOffset:-300,offsetStr:"-05:00",countries:["CA"]},{name:"America/Resolute",utcOffset:-360,offsetStr:"-06:00",countries:["CA"]},{name:"America/Atikokan",utcOffset:-300,offsetStr:"-05:00",countries:["CA"]},{name:"America/Rankin_Inlet",utcOffset:-360,offsetStr:"-06:00",countries:["CA"]},{name:"America/Winnipeg",utcOffset:-360,offsetStr:"-06:00",countries:["CA"]},{name:"America/Rainy_River",utcOffset:-360,offsetStr:"-06:00",countries:["CA"]},{name:"America/Regina",utcOffset:-360,offsetStr:"-06:00",countries:["CA"]},{name:"America/Swift_Current",utcOffset:-360,offsetStr:"-06:00",countries:["CA"]},{name:"America/Edmonton",utcOffset:-420,offsetStr:"-07:00",countries:["CA"]},{name:"America/Cambridge_Bay",utcOffset:-420,offsetStr:"-07:00",countries:["CA"]},{name:"America/Yellowknife",utcOffset:-420,offsetStr:"-07:00",countries:["CA"]},{name:"America/Inuvik",utcOffset:-420,offsetStr:"-07:00",countries:["CA"]},{name:"America/Creston",utcOffset:-420,offsetStr:"-07:00",countries:["CA"]},{name:"America/Dawson_Creek",utcOffset:-420,offsetStr:"-07:00",countries:["CA"]},{name:"America/Fort_Nelson",utcOffset:-420,offsetStr:"-07:00",countries:["CA"]},{name:"America/Vancouver",utcOffset:-480,offsetStr:"-08:00",countries:["CA"]},{name:"America/Whitehorse",utcOffset:-480,offsetStr:"-08:00",countries:["CA"]},{name:"America/Dawson",utcOffset:-480,offsetStr:"-08:00",countries:["CA"]},{name:"Indian/Cocos",utcOffset:390,offsetStr:"+06:30",countries:["CC"]},{name:"Europe/Zurich",utcOffset:60,offsetStr:"+01:00",countries:["CH","DE","LI"]},{name:"Africa/Abidjan",utcOffset:0,offsetStr:"+00:00",countries:["CI","BF","GM","GN","ML","MR","SH","SL","SN","ST","TG"]},{name:"Pacific/Rarotonga",utcOffset:-600,offsetStr:"-10:00",countries:["CK"]},{name:"America/Santiago",utcOffset:-180,offsetStr:"-03:00",countries:["CL"]},{name:"Pacific/Easter",utcOffset:-300,offsetStr:"-05:00",countries:["CL"]},{name:"Asia/Shanghai",utcOffset:480,offsetStr:"+08:00",countries:["CN"]},{name:"Asia/Urumqi",utcOffset:360,offsetStr:"+06:00",countries:["CN"]},{name:"America/Bogota",utcOffset:-300,offsetStr:"-05:00",countries:["CO"]},{name:"America/Costa_Rica",utcOffset:-360,offsetStr:"-06:00",countries:["CR"]},{name:"America/Havana",utcOffset:-300,offsetStr:"-05:00",countries:["CU"]},{name:"Atlantic/Cape_Verde",utcOffset:-60,offsetStr:"-01:00",countries:["CV"]},{name:"America/Curacao",utcOffset:-240,offsetStr:"-04:00",countries:["CW","AW","BQ","SX"]},{name:"Indian/Christmas",utcOffset:420,offsetStr:"+07:00",countries:["CX"]},{name:"Asia/Nicosia",utcOffset:120,offsetStr:"+02:00",countries:["CY"]},{name:"Europe/Prague",utcOffset:60,offsetStr:"+01:00",countries:["CZ","SK"]},{name:"Europe/Berlin",utcOffset:60,offsetStr:"+01:00",countries:["DE"]},{name:"Europe/Copenhagen",utcOffset:60,offsetStr:"+01:00",countries:["DK"]},{name:"America/Santo_Domingo",utcOffset:-240,offsetStr:"-04:00",countries:["DO"]},{name:"Africa/Algiers",utcOffset:60,offsetStr:"+01:00",countries:["DZ"]},{name:"America/Guayaquil",utcOffset:-300,offsetStr:"-05:00",countries:["EC"]},{name:"Pacific/Galapagos",utcOffset:-360,offsetStr:"-06:00",countries:["EC"]},{name:"Europe/Tallinn",utcOffset:120,offsetStr:"+02:00",countries:["EE"]},{name:"Africa/Cairo",utcOffset:120,offsetStr:"+02:00",countries:["EG"]},{name:"Africa/El_Aaiun",utcOffset:0,offsetStr:"+00:00",countries:["EH"]},{name:"Europe/Madrid",utcOffset:60,offsetStr:"+01:00",countries:["ES"]},{name:"Africa/Ceuta",utcOffset:60,offsetStr:"+01:00",countries:["ES"]},{name:"Atlantic/Canary",utcOffset:0,offsetStr:"+00:00",countries:["ES"]},{name:"Europe/Helsinki",utcOffset:120,offsetStr:"+02:00",countries:["FI","AX"]},{name:"Pacific/Fiji",utcOffset:720,offsetStr:"+12:00",countries:["FJ"]},{name:"Atlantic/Stanley",utcOffset:-180,offsetStr:"-03:00",countries:["FK"]},{name:"Pacific/Chuuk",utcOffset:600,offsetStr:"+10:00",countries:["FM"]},{name:"Pacific/Pohnpei",utcOffset:660,offsetStr:"+11:00",countries:["FM"]},{name:"Pacific/Kosrae",utcOffset:660,offsetStr:"+11:00",countries:["FM"]},{name:"Atlantic/Faroe",utcOffset:0,offsetStr:"+00:00",countries:["FO"]},{name:"Europe/Paris",utcOffset:60,offsetStr:"+01:00",countries:["FR"]},{name:"Europe/London",utcOffset:0,offsetStr:"+00:00",countries:["GB","GG","IM","JE"]},{name:"Asia/Tbilisi",utcOffset:240,offsetStr:"+04:00",countries:["GE"]},{name:"America/Cayenne",utcOffset:-180,offsetStr:"-03:00",countries:["GF"]},{name:"Africa/Accra",utcOffset:0,offsetStr:"+00:00",countries:["GH"]},{name:"Europe/Gibraltar",utcOffset:60,offsetStr:"+01:00",countries:["GI"]},{name:"America/Godthab",utcOffset:-180,offsetStr:"-03:00",countries:["GL"]},{name:"America/Danmarkshavn",utcOffset:0,offsetStr:"+00:00",countries:["GL"]},{name:"America/Scoresbysund",utcOffset:-60,offsetStr:"-01:00",countries:["GL"]},{name:"America/Thule",utcOffset:-240,offsetStr:"-04:00",countries:["GL"]},{name:"Europe/Athens",utcOffset:120,offsetStr:"+02:00",countries:["GR"]},{name:"Atlantic/South_Georgia",utcOffset:-120,offsetStr:"-02:00",countries:["GS"]},{name:"America/Guatemala",utcOffset:-360,offsetStr:"-06:00",countries:["GT"]},{name:"Pacific/Guam",utcOffset:600,offsetStr:"+10:00",countries:["GU","MP"]},{name:"Africa/Bissau",utcOffset:0,offsetStr:"+00:00",countries:["GW"]},{name:"America/Guyana",utcOffset:-240,offsetStr:"-04:00",countries:["GY"]},{name:"Asia/Hong_Kong",utcOffset:480,offsetStr:"+08:00",countries:["HK"]},{name:"America/Tegucigalpa",utcOffset:-360,offsetStr:"-06:00",countries:["HN"]},{name:"America/Port-au-Prince",utcOffset:-300,offsetStr:"-05:00",countries:["HT"]},{name:"Europe/Budapest",utcOffset:60,offsetStr:"+01:00",countries:["HU"]},{name:"Asia/Jakarta",utcOffset:420,offsetStr:"+07:00",countries:["ID"]},{name:"Asia/Pontianak",utcOffset:420,offsetStr:"+07:00",countries:["ID"]},{name:"Asia/Makassar",utcOffset:480,offsetStr:"+08:00",countries:["ID"]},{name:"Asia/Jayapura",utcOffset:540,offsetStr:"+09:00",countries:["ID"]},{name:"Europe/Dublin",utcOffset:0,offsetStr:"+00:00",countries:["IE"]},{name:"Asia/Jerusalem",utcOffset:120,offsetStr:"+02:00",countries:["IL"]},{name:"Asia/Kolkata",utcOffset:330,offsetStr:"+05:30",countries:["IN"]},{name:"Indian/Chagos",utcOffset:360,offsetStr:"+06:00",countries:["IO"]},{name:"Asia/Baghdad",utcOffset:180,offsetStr:"+03:00",countries:["IQ"]},{name:"Asia/Tehran",utcOffset:210,offsetStr:"+03:30",countries:["IR"]},{name:"Atlantic/Reykjavik",utcOffset:0,offsetStr:"+00:00",countries:["IS"]},{name:"Europe/Rome",utcOffset:60,offsetStr:"+01:00",countries:["IT","SM","VA"]},{name:"America/Jamaica",utcOffset:-300,offsetStr:"-05:00",countries:["JM"]},{name:"Asia/Amman",utcOffset:120,offsetStr:"+02:00",countries:["JO"]},{name:"Asia/Tokyo",utcOffset:540,offsetStr:"+09:00",countries:["JP"]},{name:"Africa/Nairobi",utcOffset:180,offsetStr:"+03:00",countries:["KE","DJ","ER","ET","KM","MG","SO","TZ","UG","YT"]},{name:"Asia/Bishkek",utcOffset:360,offsetStr:"+06:00",countries:["KG"]},{name:"Pacific/Tarawa",utcOffset:720,offsetStr:"+12:00",countries:["KI"]},{name:"Pacific/Enderbury",utcOffset:780,offsetStr:"+13:00",countries:["KI"]},{name:"Pacific/Kiritimati",utcOffset:840,offsetStr:"+14:00",countries:["KI"]},{name:"Asia/Pyongyang",utcOffset:510,offsetStr:"+08:30",countries:["KP"]},{name:"Asia/Seoul",utcOffset:540,offsetStr:"+09:00",countries:["KR"]},{name:"America/Cayman",utcOffset:-300,offsetStr:"-05:00",countries:["KY"]},{name:"Asia/Almaty",utcOffset:360,offsetStr:"+06:00",countries:["KZ"]},{name:"Asia/Qyzylorda",utcOffset:360,offsetStr:"+06:00",countries:["KZ"]},{name:"Asia/Aqtobe",utcOffset:300,offsetStr:"+05:00",countries:["KZ"]},{name:"Asia/Aqtau",utcOffset:300,offsetStr:"+05:00",countries:["KZ"]},{name:"Asia/Oral",utcOffset:300,offsetStr:"+05:00",countries:["KZ"]},{name:"Asia/Beirut",utcOffset:120,offsetStr:"+02:00",countries:["LB"]},{name:"Asia/Colombo",utcOffset:330,offsetStr:"+05:30",countries:["LK"]},{name:"Africa/Monrovia",utcOffset:0,offsetStr:"+00:00",countries:["LR"]},{name:"Europe/Vilnius",utcOffset:120,offsetStr:"+02:00",countries:["LT"]},{name:"Europe/Luxembourg",utcOffset:60,offsetStr:"+01:00",countries:["LU"]},{name:"Europe/Riga",utcOffset:120,offsetStr:"+02:00",countries:["LV"]},{name:"Africa/Tripoli",utcOffset:120,offsetStr:"+02:00",countries:["LY"]},{name:"Africa/Casablanca",utcOffset:0,offsetStr:"+00:00",countries:["MA"]},{name:"Europe/Monaco",utcOffset:60,offsetStr:"+01:00",countries:["MC"]},{name:"Europe/Chisinau",utcOffset:120,offsetStr:"+02:00",countries:["MD"]},{name:"Pacific/Majuro",utcOffset:720,offsetStr:"+12:00",countries:["MH"]},{name:"Pacific/Kwajalein",utcOffset:720,offsetStr:"+12:00",countries:["MH"]},{name:"Asia/Rangoon",utcOffset:390,offsetStr:"+06:30",countries:["MM"]},{name:"Asia/Ulaanbaatar",utcOffset:480,offsetStr:"+08:00",countries:["MN"]},{name:"Asia/Hovd",utcOffset:420,offsetStr:"+07:00",countries:["MN"]},{name:"Asia/Choibalsan",utcOffset:480,offsetStr:"+08:00",countries:["MN"]},{name:"Asia/Macau",utcOffset:480,offsetStr:"+08:00",countries:["MO"]},{name:"America/Martinique",utcOffset:-240,offsetStr:"-04:00",countries:["MQ"]},{name:"Europe/Malta",utcOffset:60,offsetStr:"+01:00",countries:["MT"]},{name:"Indian/Mauritius",utcOffset:240,offsetStr:"+04:00",countries:["MU"]},{name:"Indian/Maldives",utcOffset:300,offsetStr:"+05:00",countries:["MV"]},{name:"America/Mexico_City",utcOffset:-360,offsetStr:"-06:00",countries:["MX"]},{name:"America/Cancun",utcOffset:-300,offsetStr:"-05:00",countries:["MX"]},{name:"America/Merida",utcOffset:-360,offsetStr:"-06:00",countries:["MX"]},{name:"America/Monterrey",utcOffset:-360,offsetStr:"-06:00",countries:["MX"]},{name:"America/Matamoros",utcOffset:-360,offsetStr:"-06:00",countries:["MX"]},{name:"America/Mazatlan",utcOffset:-420,offsetStr:"-07:00",countries:["MX"]},{name:"America/Chihuahua",utcOffset:-420,offsetStr:"-07:00",countries:["MX"]},{name:"America/Ojinaga",utcOffset:-420,offsetStr:"-07:00",countries:["MX"]},{name:"America/Hermosillo",utcOffset:-420,offsetStr:"-07:00",countries:["MX"]},{name:"America/Tijuana",utcOffset:-480,offsetStr:"-08:00",countries:["MX"]},{name:"America/Santa_Isabel",utcOffset:-480,offsetStr:"-08:00",countries:["MX"]},{name:"America/Bahia_Banderas",utcOffset:-360,offsetStr:"-06:00",countries:["MX"]},{name:"Asia/Kuala_Lumpur",utcOffset:480,offsetStr:"+08:00",countries:["MY"]},{name:"Asia/Kuching",utcOffset:480,offsetStr:"+08:00",countries:["MY"]},{name:"Africa/Maputo",utcOffset:120,offsetStr:"+02:00",countries:["MZ","BI","BW","CD","MW","RW","ZM","ZW"]},{name:"Africa/Windhoek",utcOffset:120,offsetStr:"+02:00",countries:["NA"]},{name:"Pacific/Noumea",utcOffset:660,offsetStr:"+11:00",countries:["NC"]},{name:"Pacific/Norfolk",utcOffset:660,offsetStr:"+11:00",countries:["NF"]},{name:"Africa/Lagos",utcOffset:60,offsetStr:"+01:00",countries:["NG","AO","BJ","CD","CF","CG","CM","GA","GQ","NE"]},{name:"America/Managua",utcOffset:-360,offsetStr:"-06:00",countries:["NI"]},{name:"Europe/Amsterdam",utcOffset:60,offsetStr:"+01:00",countries:["NL"]},{name:"Europe/Oslo",utcOffset:60,offsetStr:"+01:00",countries:["NO","SJ"]},{name:"Asia/Kathmandu",utcOffset:345,offsetStr:"+05:45",countries:["NP"]},{name:"Pacific/Nauru",utcOffset:720,offsetStr:"+12:00",countries:["NR"]},{name:"Pacific/Niue",utcOffset:-660,offsetStr:"-11:00",countries:["NU"]},{name:"Pacific/Auckland",utcOffset:780,offsetStr:"+13:00",countries:["NZ","AQ"]},{name:"Pacific/Chatham",utcOffset:825,offsetStr:"+13:45",countries:["NZ"]},{name:"America/Panama",utcOffset:-300,offsetStr:"-05:00",countries:["PA"]},{name:"America/Lima",utcOffset:-300,offsetStr:"-05:00",countries:["PE"]},{name:"Pacific/Tahiti",utcOffset:-600,offsetStr:"-10:00",countries:["PF"]},{name:"Pacific/Marquesas",utcOffset:-570,offsetStr:"-09:30",countries:["PF"]},{name:"Pacific/Gambier",utcOffset:-540,offsetStr:"-09:00",countries:["PF"]},{name:"Pacific/Port_Moresby",utcOffset:600,offsetStr:"+10:00",countries:["PG"]},{name:"Pacific/Bougainville",utcOffset:660,offsetStr:"+11:00",countries:["PG"]},{name:"Asia/Manila",utcOffset:480,offsetStr:"+08:00",countries:["PH"]},{name:"Asia/Karachi",utcOffset:300,offsetStr:"+05:00",countries:["PK"]},{name:"Europe/Warsaw",utcOffset:60,offsetStr:"+01:00",countries:["PL"]},{name:"America/Miquelon",utcOffset:-180,offsetStr:"-03:00",countries:["PM"]},{name:"Pacific/Pitcairn",utcOffset:-480,offsetStr:"-08:00",countries:["PN"]},{name:"America/Puerto_Rico",utcOffset:-240,offsetStr:"-04:00",countries:["PR"]},{name:"Asia/Gaza",utcOffset:120,offsetStr:"+02:00",countries:["PS"]},{name:"Asia/Hebron",utcOffset:120,offsetStr:"+02:00",countries:["PS"]},{name:"Europe/Lisbon",utcOffset:0,offsetStr:"+00:00",countries:["PT"]},{name:"Atlantic/Madeira",utcOffset:0,offsetStr:"+00:00",countries:["PT"]},{name:"Atlantic/Azores",utcOffset:-60,offsetStr:"-01:00",countries:["PT"]},{name:"Pacific/Palau",utcOffset:540,offsetStr:"+09:00",countries:["PW"]},{name:"America/Asuncion",utcOffset:-180,offsetStr:"-03:00",countries:["PY"]},{name:"Asia/Qatar",utcOffset:180,offsetStr:"+03:00",countries:["QA","BH"]},{name:"Indian/Reunion",utcOffset:240,offsetStr:"+04:00",countries:["RE","TF"]},{name:"Europe/Bucharest",utcOffset:120,offsetStr:"+02:00",countries:["RO"]},{name:"Europe/Belgrade",utcOffset:60,offsetStr:"+01:00",countries:["RS","BA","HR","ME","MK","SI"]},{name:"Europe/Kaliningrad",utcOffset:120,offsetStr:"+02:00",countries:["RU"]},{name:"Europe/Moscow",utcOffset:180,offsetStr:"+03:00",countries:["RU"]},{name:"Europe/Simferopol",utcOffset:180,offsetStr:"+03:00",countries:["RU"]},{name:"Europe/Volgograd",utcOffset:180,offsetStr:"+03:00",countries:["RU"]},{name:"Europe/Samara",utcOffset:240,offsetStr:"+04:00",countries:["RU"]},{name:"Asia/Yekaterinburg",utcOffset:300,offsetStr:"+05:00",countries:["RU"]},{name:"Asia/Omsk",utcOffset:360,offsetStr:"+06:00",countries:["RU"]},{name:"Asia/Novosibirsk",utcOffset:360,offsetStr:"+06:00",countries:["RU"]},{name:"Asia/Novokuznetsk",utcOffset:420,offsetStr:"+07:00",countries:["RU"]},{name:"Asia/Krasnoyarsk",utcOffset:420,offsetStr:"+07:00",countries:["RU"]},{name:"Asia/Irkutsk",utcOffset:480,offsetStr:"+08:00",countries:["RU"]},{name:"Asia/Chita",utcOffset:480,offsetStr:"+08:00",countries:["RU"]},{name:"Asia/Yakutsk",utcOffset:540,offsetStr:"+09:00",countries:["RU"]},{name:"Asia/Khandyga",utcOffset:540,offsetStr:"+09:00",countries:["RU"]},{name:"Asia/Vladivostok",utcOffset:600,offsetStr:"+10:00",countries:["RU"]},{name:"Asia/Sakhalin",utcOffset:600,offsetStr:"+10:00",countries:["RU"]},{name:"Asia/Ust-Nera",utcOffset:600,offsetStr:"+10:00",countries:["RU"]},{name:"Asia/Magadan",utcOffset:600,offsetStr:"+10:00",countries:["RU"]},{name:"Asia/Srednekolymsk",utcOffset:660,offsetStr:"+11:00",countries:["RU"]},{name:"Asia/Kamchatka",utcOffset:720,offsetStr:"+12:00",countries:["RU"]},{name:"Asia/Anadyr",utcOffset:720,offsetStr:"+12:00",countries:["RU"]},{name:"Asia/Riyadh",utcOffset:180,offsetStr:"+03:00",countries:["SA","KW","YE"]},{name:"Pacific/Guadalcanal",utcOffset:660,offsetStr:"+11:00",countries:["SB"]},{name:"Indian/Mahe",utcOffset:240,offsetStr:"+04:00",countries:["SC"]},{name:"Africa/Khartoum",utcOffset:180,offsetStr:"+03:00",countries:["SD","SS"]},{name:"Europe/Stockholm",utcOffset:60,offsetStr:"+01:00",countries:["SE"]},{name:"Asia/Singapore",utcOffset:480,offsetStr:"+08:00",countries:["SG"]},{name:"America/Paramaribo",utcOffset:-180,offsetStr:"-03:00",countries:["SR"]},{name:"America/El_Salvador",utcOffset:-360,offsetStr:"-06:00",countries:["SV"]},{name:"Asia/Damascus",utcOffset:120,offsetStr:"+02:00",countries:["SY"]},{name:"America/Grand_Turk",utcOffset:-240,offsetStr:"-04:00",countries:["TC"]},{name:"Africa/Ndjamena",utcOffset:60,offsetStr:"+01:00",countries:["TD"]},{name:"Indian/Kerguelen",utcOffset:300,offsetStr:"+05:00",countries:["TF"]},{name:"Asia/Bangkok",utcOffset:420,offsetStr:"+07:00",countries:["TH","KH","LA","VN"]},{name:"Asia/Dushanbe",utcOffset:300,offsetStr:"+05:00",countries:["TJ"]},{name:"Pacific/Fakaofo",utcOffset:780,offsetStr:"+13:00",countries:["TK"]},{name:"Asia/Dili",utcOffset:540,offsetStr:"+09:00",countries:["TL"]},{name:"Asia/Ashgabat",utcOffset:300,offsetStr:"+05:00",countries:["TM"]},{name:"Africa/Tunis",utcOffset:60,offsetStr:"+01:00",countries:["TN"]},{name:"Pacific/Tongatapu",utcOffset:780,offsetStr:"+13:00",countries:["TO"]},{name:"Europe/Istanbul",utcOffset:120,offsetStr:"+02:00",countries:["TR"]},{name:"America/Port_of_Spain",utcOffset:-240,offsetStr:"-04:00",countries:["TT","AG","AI","BL","DM","GD","GP","KN","LC","MF","MS","VC","VG","VI"]},{name:"Pacific/Funafuti",utcOffset:720,offsetStr:"+12:00",countries:["TV"]},{name:"Asia/Taipei",utcOffset:480,offsetStr:"+08:00",countries:["TW"]},{name:"Europe/Kiev",utcOffset:120,offsetStr:"+02:00",countries:["UA"]},{name:"Europe/Uzhgorod",utcOffset:120,offsetStr:"+02:00",countries:["UA"]},{name:"Europe/Zaporozhye",utcOffset:120,offsetStr:"+02:00",countries:["UA"]},{name:"Pacific/Wake",utcOffset:720,offsetStr:"+12:00",countries:["UM"]},{name:"America/New_York",utcOffset:-300,offsetStr:"-05:00",countries:["US"]},{name:"America/Detroit",utcOffset:-300,offsetStr:"-05:00",countries:["US"]},{name:"America/Kentucky/Louisville",utcOffset:-300,offsetStr:"-05:00",countries:["US"]},{name:"America/Kentucky/Monticello",utcOffset:-300,offsetStr:"-05:00",countries:["US"]},{name:"America/Indiana/Indianapolis",utcOffset:-300,offsetStr:"-05:00",countries:["US"]},{name:"America/Indiana/Vincennes",utcOffset:-300,offsetStr:"-05:00",countries:["US"]},{name:"America/Indiana/Winamac",utcOffset:-300,offsetStr:"-05:00",countries:["US"]},{name:"America/Indiana/Marengo",utcOffset:-300,offsetStr:"-05:00",countries:["US"]},{name:"America/Indiana/Petersburg",utcOffset:-300,offsetStr:"-05:00",countries:["US"]},{name:"America/Indiana/Vevay",utcOffset:-300,offsetStr:"-05:00",countries:["US"]},{name:"America/Chicago",utcOffset:-360,offsetStr:"-06:00",countries:["US"]},{name:"America/Indiana/Tell_City",utcOffset:-360,offsetStr:"-06:00",countries:["US"]},{name:"America/Indiana/Knox",utcOffset:-360,offsetStr:"-06:00",countries:["US"]},{name:"America/Menominee",utcOffset:-360,offsetStr:"-06:00",countries:["US"]},{name:"America/North_Dakota/Center",utcOffset:-360,offsetStr:"-06:00",countries:["US"]},{name:"America/North_Dakota/New_Salem",utcOffset:-360,offsetStr:"-06:00",countries:["US"]},{name:"America/North_Dakota/Beulah",utcOffset:-360,offsetStr:"-06:00",countries:["US"]},{name:"America/Denver",utcOffset:-420,offsetStr:"-07:00",countries:["US"]},{name:"America/Boise",utcOffset:-420,offsetStr:"-07:00",countries:["US"]},{name:"America/Phoenix",utcOffset:-420,offsetStr:"-07:00",countries:["US"]},{name:"America/Los_Angeles",utcOffset:-480,offsetStr:"-08:00",countries:["US"]},{name:"America/Metlakatla",utcOffset:-480,offsetStr:"-08:00",countries:["US"]},{name:"America/Anchorage",utcOffset:-540,offsetStr:"-09:00",countries:["US"]},{name:"America/Juneau",utcOffset:-540,offsetStr:"-09:00",countries:["US"]},{name:"America/Sitka",utcOffset:-540,offsetStr:"-09:00",countries:["US"]},{name:"America/Yakutat",utcOffset:-540,offsetStr:"-09:00",countries:["US"]},{name:"America/Nome",utcOffset:-540,offsetStr:"-09:00",countries:["US"]},{name:"America/Adak",utcOffset:-600,offsetStr:"-10:00",countries:["US"]},{name:"Pacific/Honolulu",utcOffset:-600,offsetStr:"-10:00",countries:["US","UM"]},{name:"America/Montevideo",utcOffset:-180,offsetStr:"-03:00",countries:["UY"]},{name:"Asia/Samarkand",utcOffset:300,offsetStr:"+05:00",countries:["UZ"]},{name:"Asia/Tashkent",utcOffset:300,offsetStr:"+05:00",countries:["UZ"]},{name:"America/Caracas",utcOffset:-270,offsetStr:"-04:30",countries:["VE"]},{name:"Asia/Ho_Chi_Minh",utcOffset:420,offsetStr:"+07:00",countries:["VN"]},{name:"Pacific/Efate",utcOffset:660,offsetStr:"+11:00",countries:["VU"]},{name:"Pacific/Wallis",utcOffset:720,offsetStr:"+12:00",countries:["WF"]},{name:"Pacific/Apia",utcOffset:840,offsetStr:"+14:00",countries:["WS"]},{name:"Africa/Johannesburg",utcOffset:120,offsetStr:"+02:00",countries:["ZA","LS","SZ"]}]}],templateUrl:"app/core/directives/ms-timezone/ms-timezone.html"}}angular.module("app.core").directive("msTimezone",e)}(),function(){"use strict";function e(){function e(e){var n=0;if(e){t.fontSize=e.attrs[2]&&e.attrs[2].value?parseInt(e.attrs[2].value)-parseInt(e.attrs[2].value)%2:20,e.attrs[1].value&&e.attrs[1].value.length?(t.filtered=!0,t.filter=_.intersection(e.voiceQueuesSelected,e.attrs[1].value)):(t.filtered=!1,t.filter=e.voiceQueuesSelected);for(var a=0;a=0&&e.value&&"null"!==e.value}),"value"),t.attrs[3].value&&t.attrs[3].value.length?(i.filtered=!0,i.filter=_.intersection(t.voiceQueuesSelected,t.attrs[3].value)):(i.filtered=!1,i.filter=t.voiceQueuesSelected),i.multiBarChart.series.length>i.properties.length){var n=i.multiBarChart.series.length-i.properties.length;i.multiBarChart.series.splice(0,n),i.multiBarChart.data.splice(0,n)}for(var a=0;ai.filter.length){var o=i.multiBarChart.labels.length-i.filter.length;i.multiBarChart.labels.splice(0,o),i.multiBarChart.data[a].splice(0,o)}for(var s=0,r=0;s=0&&e.value&&"null"!==e.value}),"value"),t.attrs[3].value&&t.attrs[3].value.length?(o.filtered=!0,o.filter=_.intersection(t.voiceQueuesSelected,t.attrs[3].value)):(o.filtered=!1,o.filter=t.voiceQueuesSelected),o.pieChart.labels.length>o.properties.length){var n=o.pieChart.labels.length-o.properties.length;o.pieChart.labels.splice(0,n),o.pieChart.data.splice(0,n)}for(var a=0,i=0;a0?(r.countDown=parseInt(e.attrs[1].value),r.interval=n(function(){r.countDown-=1},1e3,0),r.timeout=t(function(){r.interval&&n.cancel(r.interval),o(e)},1e3*r.refresh)):(r.interval&&n.cancel(r.interval),r.timeout&&t.cancel(r.timeout))))}function i(e){r.results=e||{count:0,rows:[]}}function s(){r.query.offset=(r.query.page-1)*r.query.limit,r.promise=a.analyticCustomReport.run(r.query,i).$promise}var r=this;r.countDown=0,r.refresh=0,r.title="",r.columns=[],r.results={rows:[],count:0},r.query={limit:10,page:1,startDate:new Date(moment().startOf("day")),endDate:new Date(moment().endOf("day")),output:"web"},r.onInit=o,r.getResults=s,e.$on("$destroy",function(){r.interval&&n.cancel(r.interval),r.timeout&&t.cancel(r.timeout)})}e.$inject=["$scope","$timeout","$interval","api"],angular.module("app.core").controller("MsWidgetEngineWebReportController",e)}(),function(){"use strict";function e(e,t){function n(e){return t.trustAsResourceUrl(e)}this.getTrustedURL=n}function t(e){return{restrict:"E",scope:{config:"=?",onEdit:"&?",onDelete:"&?"},require:"msWidgetEngine",controller:"MsWidgetEngineController",controllerAs:"vm",bindToController:!0,templateUrl:"app/core/directives/ms-widget-engine/ms-widget-engine.html"}}e.$inject=["$mdDialog","$sce"],t.$inject=["$document"],angular.module("app.core").controller("MsWidgetEngineController",e).directive("msWidgetEngine",t)}(),function(){"use strict";function e(e,t){function n(){a()&&(o.flipped=!o.flipped,t.toggleClass("flipped",o.flipped))}function a(){return angular.isDefined(e.flippable)&&!0===e.flippable}var o=this;o.flipped=!1,o.flip=n}function t(){return{restrict:"E",scope:{flippable:"=?"},controller:"MsWidgetController",transclude:!0,compile:function(e){return e.addClass("ms-widget"),function(e,t,n,a,o){o(function(e){t.empty(),t.append(e)})}}}}function n(){return{restrict:"E",require:"^msWidget",transclude:!0,compile:function(e){return e.addClass("ms-widget-front"),function(e,t,n,a,o){o(function(e){t.empty(),t.append(e)}),e.flipWidget=a.flip}}}}function a(){return{restrict:"E",require:"^msWidget",transclude:!0,compile:function(e){return e.addClass("ms-widget-back"),function(e,t,n,a,o){o(function(e){t.empty(),t.append(e)}),e.flipWidget=a.flip}}}}e.$inject=["$scope","$element"],angular.module("app.core").controller("MsWidgetController",e).directive("msWidget",t).directive("msWidgetFront",n).directive("msWidgetBack",a)}(),function(){"use strict";function e(){return function(e){var t=Date.now()-new Date(e);return t<36e5?moment(e).fromNow():t<864e5?moment(e).format("HH:mm"):t<6048e5?moment(e).format("dddd"):moment(e).calendar()}}angular.module("app.core").filter("altDate",e)}(),function(){"use strict";function e(e){return function(t){return e.trustAsHtml(t)}}function t(){return function(e){return String(e).replace(/<[^>]+>/gm,"")}}function n(){return function(e){return e?e.replace(/ /g,""):""}}function a(){return function(e){if(e)return"directive"===e.type?e.name.replace(/([A-Z])/g,function(e){return"-"+e.toLowerCase()}):e.label||e.name}}e.$inject=["$sce"],angular.module("app.core").filter("toTrusted",e).filter("htmlToPlaintext",t).filter("nospace",n).filter("humanizeDoc",a)}(),function(){"use strict";function e(){return function(e,t){if(0===e.length||!t)return e;if(0===t.length)return[];for(var n=[],a=0;a-1){s=!0;break}}s&&a.push(i)}return a}}angular.module("app.core").filter("filterByPropIds",e)}(),function(){"use strict";function e(){return function(e,t){if(0===e.length||0===t.length)return e;var n=[];return e.forEach(function(e){t.every(function(t){var n=!1;return e.tags.forEach(function(e){e.name!==t.name||(n=!0)}),n})&&n.push(e)}),n}}function t(){return function(e,t){if(0!==e.length&&0!==t.length){if(e.length-1}function n(){function t(e){for(var t=0;t');o.html(n),a.append(o)}function s(e,n){var a=n||!1;return 4===e.length&&255===e[0]&&255===e[1]&&255===e[2]&&e.splice(3,4),a&&(e=r(e,a)),3===e.length?"rgb("+e.join(",")+")":4===e.length?"rgba("+e.join(",")+")":void t.error("Invalid number of arguments supplied in the color array: "+e.length+"\nThe array must have 3 or 4 colors.")}function r(e,t){var n={white:{1:"1",2:"0.7",3:"0.3",4:"0.12"},black:{1:"0.87",2:"0.54",3:"0.26",4:"0.12"}};return 255===e[0]&&255===e[1]&&255===e[2]?e[3]=n.white[t]:0===e[0]&&0===e[1]&&0===e[2]&&(e[3]=n.black[t]),e}function l(e){return e.charAt(0).toUpperCase()+e.slice(1)}var d={};return{generate:a,rgba:s}}e.$inject=["$cookies","$log","motionTheming"],angular.module("app.core").factory("motionGenerator",e)}(),function(){"use strict";var e=[{name:"motion-blue",options:{50:"#ebf1fa",100:"#c2d4ef",200:"#9ab8e5",300:"#78a0dc",400:"#5688d3",500:"#3470ca",600:"#2e62b1",700:"#275498",800:"#21467e",900:"#1a3865",A100:"#c2d4ef",A200:"#9ab8e5",A400:"#5688d3",A700:"#275498",contrastDefaultColor:"light",contrastDarkColors:"50 100 200 A100",contrastStrongLightColors:"300 400"}},{name:"motion-paleblue",options:{50:"#ececee",100:"#c5c6cb",200:"#9ea1a9",300:"#7d818c",400:"#5c616f",500:"#3c4252",600:"#353a48",700:"#2d323e",800:"#262933",900:"#1e2129",A100:"#c5c6cb",A200:"#9ea1a9",A400:"#5c616f",A700:"#2d323e",contrastDefaultColor:"light",contrastDarkColors:"50 100 200 A100",contrastStrongLightColors:"300 400"}}];angular.module("app.core").constant("motionPalettes",e)}(),function(){"use strict";var e={default:{primary:{name:"motion-paleblue",hues:{default:"700","hue-1":"500","hue-2":"600","hue-3":"400"}},accent:{name:"light-blue",hues:{default:"600","hue-1":"400","hue-2":"700","hue-3":"A100"}},warn:{name:"red"},background:{name:"grey",hues:{default:"A100","hue-1":"A100","hue-2":"100","hue-3":"300"}}},pinkTheme:{primary:{name:"blue-grey",hues:{default:"800","hue-1":"600","hue-2":"400","hue-3":"A100"}},accent:{name:"pink",hues:{default:"400","hue-1":"300","hue-2":"600","hue-3":"A100"}},warn:{name:"blue"},background:{name:"grey",hues:{default:"A100","hue-1":"A100","hue-2":"100","hue-3":"300"}}},tealTheme:{primary:{name:"motion-blue",hues:{default:"900","hue-1":"600","hue-2":"500","hue-3":"A100"}},accent:{name:"teal",hues:{default:"500","hue-1":"400","hue-2":"600","hue-3":"A100"}},warn:{name:"deep-orange"},background:{name:"grey",hues:{default:"A100","hue-1":"A100","hue-2":"100","hue-3":"300"}}}};angular.module("app.core").constant("motionThemes",e)}(),function(){"use strict";function e(e,t,n){var a;angular.injector(["ngCookies"]).invoke(["$cookies",function(e){a=e}]);var o=a.getObject("motion.customTheme");o&&(n.custom=o),e.alwaysWatchTheme(!0),angular.forEach(t,function(t){e.definePalette(t.name,t.options)}),angular.forEach(n,function(t,n){e.theme(n).primaryPalette(t.primary.name,t.primary.hues).accentPalette(t.accent.name,t.accent.hues).warnPalette(t.warn.name,t.warn.hues).backgroundPalette(t.background.name,t.background.hues)})}e.$inject=["$mdThemingProvider","motionPalettes","motionThemes"],angular.module("app.core").config(e)}(),function(){"use strict";function e(e,t,n){function a(){return n.PALETTES}function o(){return n.THEMES}function i(n){if(angular.isUndefined(r.themes.list[n]))return angular.isUndefined(r.themes.list.default)?void t.error('You must have at least one theme named "default"'):(t.warn('The theme "'+n+'" does not exist! Falling back to the "default" theme.'),r.themes.active.name="default",r.themes.active.theme=r.themes.list.default,void e.put("motion.selectedTheme",r.themes.active.name));r.themes.active.name=n,r.themes.active.theme=r.themes.list[n],e.put("motion.selectedTheme",n)}function s(e){r.themes.list=e}var r={getRegisteredPalettes:a,getRegisteredThemes:o,setActiveTheme:i,setThemesList:s,themes:{list:{},active:{name:"",theme:{}}}};return r}e.$inject=["$cookies","$log","$mdTheming"],angular.module("app.core").service("motionTheming",e)}(),function(){"use strict";function e(e,t,n,a){function o(e){for(var o=[],i=a.getFlatNavigation(),s=n.defer(),r=0;r-1)return!0})),t(function(){s.resolve(o)},1e3),s.promise}function i(t){t.uisref&&(t.stateParams?e.go(t.state,t.stateParams):e.go(t.state))}var s=this;s.search=o,s.searchResultClick=i}e.$inject=["$state","$timeout","$q","msNavigationService"],angular.module("app.errors.error-404").controller("Error404Controller",e)}(),function(){"use strict";function e(e,t){function n(){t.post("/api/jira",a.error).then(function(e){a.send=!0,e.data&&(a.code=e.data.id)},function(e){a.send=!1})}var a=this;a.code="",a.send=!1,a.error=e.params,a.sendReport=n}e.$inject=["$state","$http"],angular.module("app.errors.error-500").controller("Error500Controller",e)}(),function(){"use strict";function e(e,t){function n(){t.put("motion.cookieAlertHide:"+a.currentUser.id,!0)}var a=this;a.currentUser=e.getCurrentUser(),a.cookieAlertHide=t.get("motion.cookieAlertHide:"+a.currentUser.id)||!1,a.cookieAlertOnClose=n}e.$inject=["Auth","$cookies"],angular.module("app.footer").controller("FooterController",e)}(),function(){"use strict";function e(e,t,n,a,o){function i(){e.isLoggedIn()&&a.go("app.dashboards.general")}function s(){return o.auth.forgot(r.form).$promise.then(function(){t.success({title:n.instant("FORGOTPASSWORD.LINK_SENT"),msg:n.instant("FORGOTPASSWORD.LINNK_SENT_MESSAGE")})}).catch(function(e){e&&t.error({title:n.instant("FORGOTPASSWORD.PASSWORD_RESET_ERROR"),msg:e.data?e.data.message||e.message||e:e.message||e})})}var r=this;r.form={},r.forgotPassword=s,r.onInit=i}e.$inject=["Auth","toasty","$translate","$state","api"],angular.module("app.forgot").controller("ForgotPasswordController",e)}(),function(){"use strict";function e(e,t){function n(){t.put("motion.gdprAlertHide:"+a.currentUser.id,!0)}var a=this;a.currentUser=e.getCurrentUser(),a.GDPRAlertHide=t.get("motion.gdprAlertHide:"+a.currentUser.id)||!1,a.GDPRAlertOnClose=n}e.$inject=["Auth","$cookies"],angular.module("app.header").controller("HeaderController",e)}(),function(){"use strict";function e(e){var t={};return t.baseUrl="api/",t.auth=e(t.baseUrl+"auth/local",{},{local:{method:"post",url:t.baseUrl+"auth/local"},forgot:{method:"post",url:t.baseUrl+"auth/local/forgot"},reset:{method:"post",url:t.baseUrl+"auth/local/reset/:token",params:{token:"@token"}},google:{method:"post",url:t.baseUrl+"auth/google"}}),t.jira=e(t.baseUrl+"jira"),t.rpc=e(t.baseUrl+"rpc",{},{startMonitor:{method:"get",url:t.baseUrl+"rpc/voice/channels/:uniqueid/mixmonitor",params:{uniqueid:"@uniqueid"}},stopMonitor:{method:"get",url:t.baseUrl+"rpc/voice/channels/:uniqueid/stopmixmonitor",params:{uniqueid:"@uniqueid"}},getVoiceChannels:{method:"get",url:t.baseUrl+"rpc/voice/channels"},getVoiceQueues:{method:"get",url:t.baseUrl+"rpc/voice/queues"},getChatQueues:{method:"get",url:t.baseUrl+"rpc/chat/queues"},getMailQueues:{method:"get",url:t.baseUrl+"rpc/mail/queues"},getSmsQueues:{method:"get",url:t.baseUrl+"rpc/sms/queues"},getOpenchannelQueues:{method:"get",url:t.baseUrl+"rpc/openchannel/queues"},getFaxQueues:{method:"get",url:t.baseUrl+"rpc/fax/queues"},getVoiceQueuesPreview:{method:"get",url:t.baseUrl+"rpc/voice/queues/preview/:id"},getVoiceQueuesChannels:{method:"get",url:t.baseUrl+"rpc/voice/queues/channels"},getVoiceQueuesChannel:{method:"get",url:t.baseUrl+"rpc/voice/queues/channels/:uniqueid"},getVoiceQueuesChannelHangup:{method:"get",url:t.baseUrl+"rpc/voice/queues/channels/:uniqueid/hangup"},getVoiceQueuesChannelRedirect:{method:"get",url:t.baseUrl+"rpc/voice/queues/channels/:uniqueid/redirect/:exten"},getOutbound:{method:"get",url:t.baseUrl+"rpc/outbound"},getOutboundChannels:{method:"get",url:t.baseUrl+"rpc/outbound/channels"},getAgents:{method:"get",url:t.baseUrl+"rpc/agents"},setAgentCapacity:{method:"put",url:t.baseUrl+"rpc/agents/:id/capacity",params:{id:"@id"}},getTelephones:{method:"get",url:t.baseUrl+"rpc/telephones"},getTrunks:{method:"get",url:t.baseUrl+"rpc/trunks"},getCampaigns:{method:"get",url:t.baseUrl+"rpc/campaigns"},getMailAccounts:{method:"get",url:t.baseUrl+"rpc/mail/accounts"},getFaxAccounts:{method:"get",url:t.baseUrl+"rpc/fax/accounts"},getChatQueuesWaitingInteractions:{method:"get",url:t.baseUrl+"rpc/chat/queues/waitinginteractions"},getMailQueuesWaitingInteractions:{method:"get",url:t.baseUrl+"rpc/mail/queues/waitinginteractions"},getOpenchannelQueuesWaitingInteractions:{method:"get",url:t.baseUrl+"rpc/openchannel/queues/waitinginteractions"},getSmsQueuesWaitingInteractions:{method:"get",url:t.baseUrl+"rpc/sms/queues/waitinginteractions"},getFaxQueuesWaitingInteractions:{method:"get",url:t.baseUrl+"rpc/fax/queues/waitinginteractions"}}),t.version=e(t.baseUrl+"version",{},{fetch:{method:"get",url:t.baseUrl+"version/fetch"},reset:{method:"get",url:t.baseUrl+"version/reset"},pull:{method:"get",url:t.baseUrl+"version/pull"},restart:{method:"get",url:t.baseUrl+"version/restart"},migrations:{method:"get",url:t.baseUrl+"version/migrations"}}),t.system=e(t.baseUrl+"system",{},{killProcess:{method:"get",url:t.baseUrl+"system/process/:pid/kill",params:{pid:"@pid"}}}),t.pm2=e(t.baseUrl+"pm2/:id",{id:"@id"},{update:{method:"put",isArray:!0}}),t.user=e(t.baseUrl+"users/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"users/describe"},clone:{method:"post",url:t.baseUrl+"users/:id/clone",params:{includeAll:"@includeAll"}},bulkCreate:{method:"post",url:t.baseUrl+"users/create_many",isArray:!0},addContacts:{isArray:!0,method:"post",url:t.baseUrl+"users/:id/contacts"},changePassword:{isArray:!1,method:"put",url:t.baseUrl+"users/:id/password"},addQueues:{isArray:!0,method:"post",url:t.baseUrl+"users/:id/queues"},removeQueues:{isArray:!1,method:"delete",url:t.baseUrl+"users/:id/queues"},addAvatar:{isArray:!1,method:"post",url:t.baseUrl+"users/:id/avatar"},getAvatar:{isArray:!1,method:"get",url:t.baseUrl+"users/:id/avatar"},getContacts:{isArray:!1,method:"get",url:t.baseUrl+"users/:id/contacts"},getQueues:{isArray:!1,method:"get",url:t.baseUrl+"users/:id/queues"},getVoiceQueuesRt:{isArray:!1,method:"get",url:t.baseUrl+"users/:id/queues_rt"},getGroups:{isArray:!1,method:"get",url:t.baseUrl+"users/:id/groups"},getRecordings:{isArray:!1,method:"get",url:t.baseUrl+"users/:id/recordings"},getChatInteractions:{isArray:!1,method:"get",url:t.baseUrl+"users/:id/chat/interactions"},getOpenchannelInteractions:{isArray:!1,method:"get",url:t.baseUrl+"users/:id/openchannel/interactions"},getMailInteractions:{isArray:!1,method:"get",url:t.baseUrl+"users/:id/mail/interactions"},getSmsInteractions:{isArray:!1,method:"get",url:t.baseUrl+"users/:id/sms/interactions"},getFaxInteractions:{isArray:!1,method:"get",url:t.baseUrl+"users/:id/fax/interactions"},login:{isArray:!1,method:"post",url:t.baseUrl+"users/:id/login"},logout:{isArray:!1,method:"post",url:t.baseUrl+"users/:id/logout"},pause:{isArray:!1,method:"post",url:t.baseUrl+"users/:id/pause"},unpause:{isArray:!1,method:"post",url:t.baseUrl+"users/:id/unpause"},getTeams:{isArray:!1,method:"get",url:t.baseUrl+"users/:id/teams"},addTeams:{isArray:!0,method:"post",url:t.baseUrl+"users/:id/teams"},removeTeams:{isArray:!1,method:"delete",url:t.baseUrl+"users/:id/teams"},getLists:{isArray:!1,method:"get",url:t.baseUrl+"users/:id/lists"},getAgents:{isArray:!1,method:"get",url:t.baseUrl+"users/:id/agents"}}),t.voiceChanSpy=e(t.baseUrl+"voice/chanspy/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"voice/chanspy/describe"},clone:{method:"post",url:t.baseUrl+"voice/chanspy/:id/clone",params:{includeAll:"@includeAll"}}}),t.voiceContext=e(t.baseUrl+"voice/contexts/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"voice/contexts/describe"},clone:{method:"post",url:t.baseUrl+"voice/contexts/:id/clone",params:{includeAll:"@includeAll"}}}),t.voiceDisposition=e(t.baseUrl+"voice/dispositions/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"voice/dispositions/describe"},clone:{method:"post",url:t.baseUrl+"voice/dispositions/:id/clone",params:{includeAll:"@includeAll"}}}),t.voiceExtension=e(t.baseUrl+"voice/extensions/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"voice/extensions/describe"},clone:{method:"post",url:t.baseUrl+"voice/extensions/:id/clone",params:{includeAll:"@includeAll"}},addApplications:{isArray:!1,method:"post",url:t.baseUrl+"voice/extensions/:id/applications"}}),t.voiceMusicOnHold=e(t.baseUrl+"voice/mohs/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"voice/mohs/describe"},clone:{method:"post",url:t.baseUrl+"voice/mohs/:id/clone",params:{includeAll:"@includeAll"}},addSound:{isArray:!1,method:"post",url:t.baseUrl+"voice/mohs/:id/sounds"},removeSound:{isArray:!1,method:"delete",url:t.baseUrl+"voice/mohs/:id/sounds/:id2"},getSounds:{isArray:!1,method:"get",url:t.baseUrl+"voice/mohs/:id/sounds"}}),t.voiceQueue=e(t.baseUrl+"voice/queues/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"voice/queues/describe"},clone:{method:"post",url:t.baseUrl+"voice/queues/:id/clone",params:{includeAll:"@includeAll"}},getHoppers:{isArray:!1,method:"get",url:t.baseUrl+"voice/queues/:id/hoppers"},getHopperHistories:{isArray:!1,method:"get",url:t.baseUrl+"voice/queues/:id/hopper_histories"},getHopperFinals:{isArray:!1,method:"get",url:t.baseUrl+"voice/queues/:id/hopper_finals"},getHopperBlacks:{isArray:!1,method:"get",url:t.baseUrl+"voice/queues/:id/hopper_black"},getTeams:{isArray:!1,method:"get",url:t.baseUrl+"voice/queues/:id/teams"},addTeams:{isArray:!0,method:"post",url:t.baseUrl+"voice/queues/:id/teams"},removeTeams:{isArray:!1,method:"delete",url:t.baseUrl+"voice/queues/:id/teams"},addAgents:{isArray:!0,method:"post",url:t.baseUrl+"voice/queues/:id/users"},removeAgents:{isArray:!1,method:"delete",url:t.baseUrl+"voice/queues/:id/users"},getAgents:{isArray:!1,method:"get",url:t.baseUrl+"voice/queues/:id/users"},getMembers:{isArray:!1,method:"get",url:t.baseUrl+"voice/queues/:id/members"},getLists:{isArray:!1,method:"get",url:t.baseUrl+"voice/queues/:id/lists"},addLists:{isArray:!0,method:"post",url:t.baseUrl+"voice/queues/:id/lists"},removeLists:{isArray:!0,method:"delete",url:t.baseUrl+"voice/queues/:id/lists"},getBlackLists:{isArray:!1,method:"get",url:t.baseUrl+"voice/queues/:id/blacklists"},addBlackLists:{isArray:!0,method:"post",url:t.baseUrl+"voice/queues/:id/blacklists"},removeBlackLists:{isArray:!0,method:"delete",url:t.baseUrl+"voice/queues/:id/blacklists"}}),t.voiceRecording=e(t.baseUrl+"voice/recordings/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"voice/recordings/describe"},clone:{method:"post",url:t.baseUrl+"voice/recordings/:id/clone",params:{includeAll:"@includeAll"}},download:{isArray:!1,method:"get",url:t.baseUrl+"voice/recordings/:id/download"}}),t.voiceMail=e(t.baseUrl+"voice/mails/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"voice/mails/describe"},clone:{method:"post",url:t.baseUrl+"voice/mails/:id/clone",params:{includeAll:"@includeAll"}},getMessages:{isArray:!1,method:"get",url:t.baseUrl+"voice/mails/:id/messages"}}),t.voiceMailMessage=e(t.baseUrl+"voice/mails/messages/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"voice/mails/messages/describe"},clone:{method:"post",url:t.baseUrl+"voice/mails/messages/:id/clone",params:{includeAll:"@includeAll"}},download:{isArray:!1,method:"get",url:t.baseUrl+"voice/mails/messages/:id/download"}}),t.voiceCallReport=e(t.baseUrl+"voice/calls/reports/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"voice/calls/reports/describe"},clone:{method:"post",url:t.baseUrl+"voice/calls/reports/:id/clone",params:{includeAll:"@includeAll"}}}),t.voiceDialReport=e(t.baseUrl+"voice/dials/reports/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"voice/dials/reports/describe"},clone:{method:"post",url:t.baseUrl+"voice/dials/reports/:id/clone",params:{includeAll:"@includeAll"}}}),t.voiceAgentReport=e(t.baseUrl+"voice/agents/reports/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"voice/agents/reports/describe"},clone:{method:"post",url:t.baseUrl+"voice/agents/reports/:id/clone",params:{includeAll:"@includeAll"}}}),t.voiceQueueReport=e(t.baseUrl+"voice/queues/reports/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"voice/queues/reports/describe"},clone:{method:"post",url:t.baseUrl+"voice/queues/reports/:id/clone",params:{includeAll:"@includeAll"}}}),t.memberReport=e(t.baseUrl+"members/reports/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"members/reports/describe"},clone:{method:"post",url:t.baseUrl+"members/reports/:id/clone",params:{includeAll:"@includeAll"}}}),t.trunk=e(t.baseUrl+"trunks/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"trunks/describe"},clone:{method:"post",url:t.baseUrl+"trunks/:id/clone",params:{includeAll:"@includeAll"}}}),t.voiceTransferReport=e(t.baseUrl+"voice/transfers/reports/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"voice/transfers/reports/describe"},clone:{method:"post",url:t.baseUrl+"voice/transfers/reports/:id/clone",params:{includeAll:"@includeAll"}}}),t.mailServerOut=e(t.baseUrl+"mail/out_servers/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"mail/out_servers/describe"},clone:{method:"post",url:t.baseUrl+"mail/out_servers/:id/clone",params:{includeAll:"@includeAll"}}}),t.mailAccount=e(t.baseUrl+"mail/accounts/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"mail/accounts/describe"},clone:{method:"post",url:t.baseUrl+"mail/accounts/:id/clone",params:{includeAll:"@includeAll"}},addAnswer:{isArray:!1,method:"post",url:t.baseUrl+"mail/accounts/:id/canned_answers"},getAnswers:{isArray:!1,method:"get",url:t.baseUrl+"mail/accounts/:id/canned_answers"},removeAnswers:{isArray:!1,method:"delete",url:t.baseUrl+"mail/accounts/:id/canned_answers"},getImap:{isArray:!1,method:"get",url:t.baseUrl+"mail/accounts/:id/in_servers"},addImap:{isArray:!1,method:"post",url:t.baseUrl+"mail/accounts/:id/in_servers"},removeImap:{isArray:!1,method:"delete",url:t.baseUrl+"mail/accounts/:id/in_servers"},getSmtp:{isArray:!1,method:"get",url:t.baseUrl+"mail/accounts/:id/out_servers"},addSmtp:{isArray:!1,method:"post",url:t.baseUrl+"mail/accounts/:id/out_servers"},removeSmtp:{isArray:!1,method:"delete",url:t.baseUrl+"mail/accounts/:id/out_servers"},addInteraction:{isArray:!1,method:"post",url:t.baseUrl+"mail/accounts/:id/interactions"},getInteractions:{isArray:!1,method:"get",url:t.baseUrl+"mail/accounts/:id/interactions"},addApplications:{isArray:!1,method:"post",url:t.baseUrl+"mail/accounts/:id/applications"},getApplications:{isArray:!1,method:"get",url:t.baseUrl+"mail/accounts/:id/applications"},addDisposition:{isArray:!1,method:"post",url:t.baseUrl+"mail/accounts/:id/dispositions"},addDispositions:{isArray:!1,method:"post",url:t.baseUrl+"mail/accounts/:id/dispositions"},getDispositions:{isArray:!1,method:"get",url:t.baseUrl+"mail/accounts/:id/dispositions"},getMessages:{isArray:!1,method:"get",url:t.baseUrl+"mail/accounts/:id/messages"},send:{isArray:!1,method:"post",url:t.baseUrl+"mail/accounts/:id/send"},verifySmtp:{isArray:!1,method:"get",url:t.baseUrl+"mail/accounts/:id/verify"}}),t.mailQueue=e(t.baseUrl+"mail/queues/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"mail/queues/describe"},clone:{method:"post",url:t.baseUrl+"mail/queues/:id/clone",params:{includeAll:"@includeAll"}},getMembers:{isArray:!1,method:"get",url:t.baseUrl+"mail/queues/:id/members"},getTeams:{isArray:!1,method:"get",url:t.baseUrl+"mail/queues/:id/teams"},addTeams:{isArray:!0,method:"post",url:t.baseUrl+"mail/queues/:id/teams"},removeTeams:{isArray:!1,method:"delete",url:t.baseUrl+"mail/queues/:id/teams"},addAgents:{isArray:!0,method:"post",url:t.baseUrl+"mail/queues/:id/users"},removeAgents:{isArray:!1,method:"delete",url:t.baseUrl+"mail/queues/:id/users"},getAgents:{isArray:!1,method:"get",url:t.baseUrl+"mail/queues/:id/users"}}),t.mailSubstatus=e(t.baseUrl+"mail/substatuses/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"mail/substatuses/describe"},clone:{method:"post",url:t.baseUrl+"mail/substatuses/:id/clone",params:{includeAll:"@includeAll"}}}),t.mailInteraction=e(t.baseUrl+"mail/interactions/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"mail/interactions/describe"},clone:{method:"post",url:t.baseUrl+"mail/interactions/:id/clone",params:{includeAll:"@includeAll"}},addMessage:{isArray:!1,method:"post",url:t.baseUrl+"mail/interactions/:id/messages"},getMessages:{isArray:!1,method:"get",url:t.baseUrl+"mail/interactions/:id/messages"},addTags:{isArray:!0,method:"post",url:t.baseUrl+"mail/interactions/:id/tags"},removeTags:{isArray:!1,method:"delete",url:t.baseUrl+"mail/interactions/:id/tags"}}),t.mailMessage=e(t.baseUrl+"mail/messages/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"mail/messages/describe"},clone:{method:"post",url:t.baseUrl+"mail/messages/:id/clone",params:{includeAll:"@includeAll"}},accept:{isArray:!1,method:"put",url:t.baseUrl+"mail/messages/:id/accept"},reject:{isArray:!1,method:"put",url:t.baseUrl+"mail/messages/:id/reject"}}),t.mailApplication=e(t.baseUrl+"mail/applications/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"mail/applications/describe"},clone:{method:"post",url:t.baseUrl+"mail/applications/:id/clone",params:{includeAll:"@includeAll"}}}),t.mailDisposition=e(t.baseUrl+"mail/dispositions/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"mail/dispositions/describe"},clone:{method:"post",url:t.baseUrl+"mail/dispositions/:id/clone",params:{includeAll:"@includeAll"}}}),t.mailQueueReport=e(t.baseUrl+"mail/reports/queue/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"mail/reports/queue/describe"},clone:{method:"post",url:t.baseUrl+"mail/reports/queue/:id/clone",params:{includeAll:"@includeAll"}}}),t.dashboard=e(t.baseUrl+"dashboards/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"dashboards/describe"},clone:{method:"post",url:t.baseUrl+"dashboards/:id/clone",params:{includeAll:"@includeAll"}},addItem:{isArray:!1,method:"post",url:t.baseUrl+"dashboards/:id/items"},getItems:{isArray:!1,method:"get",url:t.baseUrl+"dashboards/:id/items"}}),t.dashboardItem=e(t.baseUrl+"dashboards/items/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"dashboards/items/describe"},clone:{method:"post",url:t.baseUrl+"dashboards/items/:id/clone",params:{includeAll:"@includeAll"}}}),t.faxAccount=e(t.baseUrl+"fax/accounts/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"fax/accounts/describe"},clone:{method:"post",url:t.baseUrl+"fax/accounts/:id/clone",params:{includeAll:"@includeAll"}},addAnswer:{isArray:!1,method:"post",url:t.baseUrl+"fax/accounts/:id/canned_answers"},getAnswers:{isArray:!1,method:"get",url:t.baseUrl+"fax/accounts/:id/canned_answers"},removeAnswers:{isArray:!1,method:"delete",url:t.baseUrl+"fax/accounts/:id/canned_answers"},addInteraction:{isArray:!1,method:"post",url:t.baseUrl+"fax/accounts/:id/interactions"},getInteractions:{isArray:!1,method:"get",url:t.baseUrl+"fax/accounts/:id/interactions"},addApplications:{isArray:!1,method:"post",url:t.baseUrl+"fax/accounts/:id/applications"},getApplications:{isArray:!1,method:"get",url:t.baseUrl+"fax/accounts/:id/applications"},addDisposition:{isArray:!1,method:"post",url:t.baseUrl+"fax/accounts/:id/dispositions"},addDispositions:{isArray:!1,method:"post",url:t.baseUrl+"fax/accounts/:id/dispositions"},getDispositions:{isArray:!1,method:"get",url:t.baseUrl+"fax/accounts/:id/dispositions"},addAccountApplications:{isArray:!1,method:"post",url:t.baseUrl+"fax/accounts/addaccountapplications"},updateAccountApplications:{isArray:!1,method:"post",url:t.baseUrl+"fax/accounts/updateaccountapplications"},getMessages:{isArray:!1,method:"get",url:t.baseUrl+"fax/accounts/:id/messages"},send:{isArray:!1,method:"post",url:t.baseUrl+"fax/accounts/:id/send"}}),t.faxApplication=e(t.baseUrl+"fax/applications/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"fax/applications/describe"},clone:{method:"post",url:t.baseUrl+"fax/applications/:id/clone",params:{includeAll:"@includeAll"}}}),t.faxDisposition=e(t.baseUrl+"fax/dispositions/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"fax/dispositions/describe"},clone:{method:"post",url:t.baseUrl+"fax/dispositions/:id/clone",params:{includeAll:"@includeAll"}}}),t.faxInteraction=e(t.baseUrl+"fax/interactions/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"fax/interactions/describe"},clone:{method:"post",url:t.baseUrl+"fax/interactions/:id/clone",params:{includeAll:"@includeAll"}},addMessage:{isArray:!1,method:"post",url:t.baseUrl+"fax/interactions/:id/messages"},getMessages:{isArray:!1,method:"get",url:t.baseUrl+"fax/interactions/:id/messages"},addTags:{isArray:!0,method:"post",url:t.baseUrl+"fax/interactions/:id/tags"},removeTags:{isArray:!1,method:"delete",url:t.baseUrl+"fax/interactions/:id/tags"}}),t.faxMessage=e(t.baseUrl+"fax/messages/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"fax/messages/describe"},clone:{method:"post",url:t.baseUrl+"fax/messages/:id/clone",params:{includeAll:"@includeAll"}},accept:{isArray:!1,method:"put",url:t.baseUrl+"fax/messages/:id/accept"},reject:{isArray:!1,method:"put",url:t.baseUrl+"fax/messages/:id/reject"}}),t.faxQueue=e(t.baseUrl+"fax/queues/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"fax/queues/describe"},clone:{method:"post",url:t.baseUrl+"fax/queues/:id/clone",params:{includeAll:"@includeAll"}},getMembers:{isArray:!1,method:"get",url:t.baseUrl+"fax/queues/:id/members"},getTeams:{isArray:!1,method:"get",url:t.baseUrl+"fax/queues/:id/teams"},addTeams:{isArray:!0,method:"post",url:t.baseUrl+"fax/queues/:id/teams"},removeTeams:{isArray:!1,method:"delete",url:t.baseUrl+"fax/queues/:id/teams"},addAgents:{isArray:!0,method:"post",url:t.baseUrl+"fax/queues/:id/users"},removeAgents:{isArray:!1,method:"delete",url:t.baseUrl+"fax/queues/:id/users"},getAgents:{isArray:!1,method:"get",url:t.baseUrl+"fax/queues/:id/users"}}),t.faxQueueReport=e(t.baseUrl+"fax/reports/queue/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"fax/reports/queue/describe"},clone:{method:"post",url:t.baseUrl+"fax/reports/queue/:id/clone",params:{includeAll:"@includeAll"}}}),t.smsAccount=e(t.baseUrl+"sms/accounts/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"sms/accounts/describe"},clone:{method:"post",url:t.baseUrl+"sms/accounts/:id/clone",params:{includeAll:"@includeAll"}},addAnswer:{isArray:!1,method:"post",url:t.baseUrl+"sms/accounts/:id/canned_answers"},getAnswers:{isArray:!1,method:"get",url:t.baseUrl+"sms/accounts/:id/canned_answers"},removeAnswers:{isArray:!1,method:"delete",url:t.baseUrl+"sms/accounts/:id/canned_answers"},notify:{isArray:!1,method:"post",url:t.baseUrl+"sms/accounts/:id/notify"},addApplications:{isArray:!1,method:"post",url:t.baseUrl+"sms/accounts/:id/applications"},getApplications:{isArray:!1,method:"get",url:t.baseUrl+"sms/accounts/:id/applications"},addDisposition:{isArray:!1,method:"post",url:t.baseUrl+"sms/accounts/:id/dispositions"},addDispositions:{isArray:!1,method:"post",url:t.baseUrl+"sms/accounts/:id/dispositions"},getDispositions:{isArray:!1,method:"get",url:t.baseUrl+"sms/accounts/:id/dispositions"},getInteractions:{isArray:!1,method:"get",url:t.baseUrl+"sms/accounts/:id/interactions"},send:{isArray:!1,method:"post",url:t.baseUrl+"sms/accounts/:id/send"},status:{isArray:!1,method:"post",url:t.baseUrl+"sms/accounts/:id/status"}}),t.smsApplication=e(t.baseUrl+"sms/applications/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"sms/applications/describe"},clone:{method:"post",url:t.baseUrl+"sms/applications/:id/clone",params:{includeAll:"@includeAll"}}}),t.smsDisposition=e(t.baseUrl+"sms/dispositions/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"sms/dispositions/describe"},clone:{method:"post",url:t.baseUrl+"sms/dispositions/:id/clone",params:{includeAll:"@includeAll"}}}),t.smsInteraction=e(t.baseUrl+"sms/interactions/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"sms/interactions/describe"},clone:{method:"post",url:t.baseUrl+"sms/interactions/:id/clone",params:{includeAll:"@includeAll"}},addMessage:{isArray:!1,method:"post",url:t.baseUrl+"sms/interactions/:id/messages"},getMessages:{isArray:!1,method:"get",url:t.baseUrl+"sms/interactions/:id/messages"},addTags:{isArray:!0,method:"post",url:t.baseUrl+"sms/interactions/:id/tags"},removeTags:{isArray:!1,method:"delete",url:t.baseUrl+"sms/interactions/:id/tags"}}),t.smsMessage=e(t.baseUrl+"sms/messages/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"sms/messages/describe"},clone:{method:"post",url:t.baseUrl+"sms/messages/:id/clone",params:{includeAll:"@includeAll"}},accept:{isArray:!1,method:"put",url:t.baseUrl+"sms/messages/:id/accept"},reject:{isArray:!1,method:"put",url:t.baseUrl+"sms/messages/:id/reject"},status:{isArray:!1,method:"post",url:t.baseUrl+"sms/messages/:id/status"}}),t.smsQueue=e(t.baseUrl+"sms/queues/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"sms/queues/describe"},clone:{method:"post",url:t.baseUrl+"sms/queues/:id/clone",params:{includeAll:"@includeAll"}},getMembers:{isArray:!1,method:"get",url:t.baseUrl+"sms/queues/:id/members"},getTeams:{isArray:!1,method:"get",url:t.baseUrl+"sms/queues/:id/teams"},addTeams:{isArray:!0,method:"post",url:t.baseUrl+"sms/queues/:id/teams"},removeTeams:{isArray:!1,method:"delete",url:t.baseUrl+"sms/queues/:id/teams"},addAgents:{isArray:!0,method:"post",url:t.baseUrl+"sms/queues/:id/users"},removeAgents:{isArray:!1,method:"delete",url:t.baseUrl+"sms/queues/:id/users"},getAgents:{isArray:!1,method:"get",url:t.baseUrl+"sms/queues/:id/users"}}),t.openchannelAccount=e(t.baseUrl+"openchannel/accounts/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"openchannel/accounts/describe"},clone:{method:"post",url:t.baseUrl+"openchannel/accounts/:id/clone",params:{includeAll:"@includeAll"}},addAnswer:{isArray:!1,method:"post",url:t.baseUrl+"openchannel/accounts/:id/canned_answers"},getAnswers:{isArray:!1,method:"get",url:t.baseUrl+"openchannel/accounts/:id/canned_answers"},removeAnswers:{isArray:!1,method:"delete",url:t.baseUrl+"openchannel/accounts/:id/canned_answers"},notify:{isArray:!1,method:"post",url:t.baseUrl+"openchannel/accounts/:id/notify"},addApplications:{isArray:!1,method:"post",url:t.baseUrl+"openchannel/accounts/:id/applications"},getApplications:{isArray:!1,method:"get",url:t.baseUrl+"openchannel/accounts/:id/applications"},addDisposition:{isArray:!1,method:"post",url:t.baseUrl+"openchannel/accounts/:id/dispositions"},addDispositions:{isArray:!1,method:"post",url:t.baseUrl+"openchannel/accounts/:id/dispositions"},getDispositions:{isArray:!1,method:"get",url:t.baseUrl+"openchannel/accounts/:id/dispositions"},getInteractions:{isArray:!1,method:"get",url:t.baseUrl+"openchannel/accounts/:id/interactions"}}),t.openchannelApplication=e(t.baseUrl+"openchannel/applications/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"openchannel/applications/describe"},clone:{method:"post",url:t.baseUrl+"openchannel/applications/:id/clone",params:{includeAll:"@includeAll"}}}),t.openchannelDisposition=e(t.baseUrl+"openchannel/dispositions/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"openchannel/dispositions/describe"},clone:{method:"post",url:t.baseUrl+"openchannel/dispositions/:id/clone",params:{includeAll:"@includeAll"}}}),t.openchannelInteraction=e(t.baseUrl+"openchannel/interactions/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"openchannel/interactions/describe"},clone:{method:"post",url:t.baseUrl+"openchannel/interactions/:id/clone",params:{includeAll:"@includeAll"}},addMessage:{isArray:!1,method:"post",url:t.baseUrl+"openchannel/interactions/:id/messages"},getMessages:{isArray:!1,method:"get",url:t.baseUrl+"openchannel/interactions/:id/messages"},addTags:{isArray:!0,method:"post",url:t.baseUrl+"openchannel/interactions/:id/tags"},removeTags:{isArray:!1,method:"delete",url:t.baseUrl+"openchannel/interactions/:id/tags"}}),t.openchannelMessage=e(t.baseUrl+"openchannel/messages/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"openchannel/messages/describe"},clone:{method:"post",url:t.baseUrl+"openchannel/messages/:id/clone",params:{includeAll:"@includeAll"}},accept:{isArray:!1,method:"put",url:t.baseUrl+"openchannel/messages/:id/accept"},reject:{isArray:!1,method:"put",url:t.baseUrl+"openchannel/messages/:id/reject"}}),t.openchannelQueue=e(t.baseUrl+"openchannel/queues/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"openchannel/queues/describe"},clone:{method:"post",url:t.baseUrl+"openchannel/queues/:id/clone",params:{includeAll:"@includeAll"}},getMembers:{isArray:!1,method:"get",url:t.baseUrl+"openchannel/queues/:id/members"},getTeams:{isArray:!1,method:"get",url:t.baseUrl+"openchannel/queues/:id/teams"},addTeams:{isArray:!0,method:"post",url:t.baseUrl+"openchannel/queues/:id/teams"},removeTeams:{isArray:!1,method:"delete",url:t.baseUrl+"openchannel/queues/:id/teams"},addAgents:{isArray:!0,method:"post",url:t.baseUrl+"openchannel/queues/:id/users"},removeAgents:{isArray:!1,method:"delete",url:t.baseUrl+"openchannel/queues/:id/users"},getAgents:{isArray:!1,method:"get",url:t.baseUrl+"openchannel/queues/:id/users"}}),t.chatWebsite=e(t.baseUrl+"chat/websites/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"chat/websites/describe"},clone:{method:"post",url:t.baseUrl+"chat/websites/:id/clone",params:{includeAll:"@includeAll"}},addAnswer:{isArray:!1,method:"post",url:t.baseUrl+"chat/websites/:id/canned_answers"},getAnswers:{isArray:!1,method:"get",url:t.baseUrl+"chat/websites/:id/canned_answers"},removeAnswers:{isArray:!1,method:"delete",url:t.baseUrl+"chat/websites/:id/canned_answers"},addLogo:{isArray:!1,method:"post",url:t.baseUrl+"chat/websites/:id/logo"},addAvatar:{isArray:!1,method:"post",url:t.baseUrl+"chat/websites/:id/avatar"},getLogo:{isArray:!1,method:"get",url:t.baseUrl+"chat/websites/:id/logo"},getAvatar:{isArray:!1,method:"get",url:t.baseUrl+"chat/websites/:id/avatar"},notify:{isArray:!1,method:"post",url:t.baseUrl+"chat/websites/:id/notify"},offline:{isArray:!1,method:"post",url:t.baseUrl+"chat/websites/:id/offline"},addInteraction:{isArray:!1,method:"post",url:t.baseUrl+"chat/websites/:id/interactions"},getInteractions:{isArray:!1,method:"get",url:t.baseUrl+"chat/websites/:id/interactions"},getSnippet:{isArray:!1,method:"get",url:t.baseUrl+"chat/websites/:id/snippet"},addApplications:{isArray:!1,method:"post",url:t.baseUrl+"chat/websites/:id/applications"},getApplications:{isArray:!1,method:"get",url:t.baseUrl+"chat/websites/:id/applications"},addDisposition:{isArray:!1,method:"post",url:t.baseUrl+"chat/websites/:id/dispositions"},addDispositions:{isArray:!1,method:"post",url:t.baseUrl+"chat/websites/:id/dispositions"},getDispositions:{isArray:!1,method:"get",url:t.baseUrl+"chat/websites/:id/dispositions"},addProactiveActions:{isArray:!1,method:"post",url:t.baseUrl+"chat/websites/:id/proactive_actions"},getProactiveActions:{isArray:!1,method:"get",url:t.baseUrl+"chat/websites/:id/proactive_actions"},getFields:{isArray:!1,method:"get",url:t.baseUrl+"chat/websites/:id/fields"},getOfflineMessages:{isArray:!1,method:"get",url:t.baseUrl+"chat/websites/:id/offline_messages"}}),t.openchannelQueueReport=e(t.baseUrl+"openchannel/reports/queue/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"openchannel/reports/queue/describe"},clone:{method:"post",url:t.baseUrl+"openchannel/reports/queue/:id/clone",params:{includeAll:"@includeAll"}}}),t.chatApplication=e(t.baseUrl+"chat/applications/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"chat/applications/describe"},clone:{method:"post",url:t.baseUrl+"chat/applications/:id/clone",params:{includeAll:"@includeAll"}}}),t.chatDisposition=e(t.baseUrl+"chat/dispositions/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"chat/dispositions/describe"},clone:{method:"post",url:t.baseUrl+"chat/dispositions/:id/clone",params:{includeAll:"@includeAll"}}}),t.chatInteraction=e(t.baseUrl+"chat/interactions/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"chat/interactions/describe"},clone:{method:"post",url:t.baseUrl+"chat/interactions/:id/clone",params:{includeAll:"@includeAll"}},abandon:{isArray:!1,method:"put",url:t.baseUrl+"chat/interactions/:id/abandon"},attachmentUpload:{isArray:!1,method:"post",url:t.baseUrl+"chat/interactions/:id/attachment_upload"},attachmentDownload:{isArray:!1,method:"get",url:t.baseUrl+"chat/interactions/:id/attachment_download"},close:{isArray:!1,method:"put",url:t.baseUrl+"chat/interactions/:id/close"},addMessage:{isArray:!1,method:"post",url:t.baseUrl+"chat/interactions/:id/messages"},getMessages:{isArray:!1,method:"get",url:t.baseUrl+"chat/interactions/:id/messages"},getMyMessages:{isArray:!1,method:"get",url:t.baseUrl+"chat/interactions/:id/my_messages"},addTags:{isArray:!0,method:"post",url:t.baseUrl+"chat/interactions/:id/tags"},removeTags:{isArray:!1,method:"delete",url:t.baseUrl+"chat/interactions/:id/tags"}}),t.chatMessage=e(t.baseUrl+"chat/messages/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"chat/messages/describe"},clone:{method:"post",url:t.baseUrl+"chat/messages/:id/clone",params:{includeAll:"@includeAll"}},accept:{isArray:!1,method:"put",url:t.baseUrl+"chat/messages/:id/accept"},reject:{isArray:!1,method:"put",url:t.baseUrl+"chat/messages/:id/reject"}}),t.chatOfflineMessage=e(t.baseUrl+"chat/offline_messages/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"chat/offline_messages/describe"},clone:{method:"post",url:t.baseUrl+"chat/offline_messages/:id/clone",params:{includeAll:"@includeAll"}}}),t.chatQueue=e(t.baseUrl+"chat/queues/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"chat/queues/describe"},clone:{method:"post",url:t.baseUrl+"chat/queues/:id/clone",params:{includeAll:"@includeAll"}},getMembers:{isArray:!1,method:"get",url:t.baseUrl+"chat/queues/:id/members"},getTeams:{isArray:!1,method:"get",url:t.baseUrl+"chat/queues/:id/teams"},addTeams:{isArray:!0,method:"post",url:t.baseUrl+"chat/queues/:id/teams"},removeTeams:{isArray:!1,method:"delete",url:t.baseUrl+"chat/queues/:id/teams"},addAgents:{isArray:!0,method:"post",url:t.baseUrl+"chat/queues/:id/users"},removeAgents:{isArray:!1,method:"delete",url:t.baseUrl+"chat/queues/:id/users"},getAgents:{isArray:!1,method:"get",url:t.baseUrl+"chat/queues/:id/users"}}),t.chatGroup=e(t.baseUrl+"chat/groups/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"chat/groups/describe"},clone:{method:"post",url:t.baseUrl+"chat/groups/:id/clone",params:{includeAll:"@includeAll"}},getUnread:{isArray:!1,method:"get",url:t.baseUrl+"chat/groups/:id/unread"},addMembers:{isArray:!0,method:"post",url:t.baseUrl+"chat/groups/:id/members"},getMembers:{isArray:!1,method:"get",url:t.baseUrl+"chat/groups/:id/members"},removeMembers:{isArray:!1,method:"delete",url:t.baseUrl+"chat/groups/:id/members"},addMessage:{isArray:!1,method:"post",url:t.baseUrl+"chat/groups/:id/messages"},getMessages:{isArray:!1,method:"get",url:t.baseUrl+"chat/groups/:id/messages"}}),t.chatProactiveAction=e(t.baseUrl+"chat/proactive_actions/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"chat/proactive_actions/describe"},clone:{method:"post",url:t.baseUrl+"chat/proactive_actions/:id/clone",params:{includeAll:"@includeAll"}}}),t.cmCompany=e(t.baseUrl+"cm/companies/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"cm/companies/describe"},clone:{method:"post",url:t.baseUrl+"cm/companies/:id/clone",params:{includeAll:"@includeAll"}},addContacts:{isArray:!1,method:"post",url:t.baseUrl+"cm/companies/:id/contacts"},getContacts:{isArray:!1,method:"get",url:t.baseUrl+"cm/companies/:id/contacts"}}),t.cmContact=e(t.baseUrl+"cm/contacts/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"cm/contacts/describe"},clone:{method:"post",url:t.baseUrl+"cm/contacts/:id/clone",params:{includeAll:"@includeAll"}},merge:{isArray:!1,method:"post",url:t.baseUrl+"cm/contacts/merge"},bulkCreate:{isArray:!1,method:"post",url:t.baseUrl+"cm/contacts/create_many"},getHoppers:{isArray:!1,method:"get",url:t.baseUrl+"cm/contacts/:id/hoppers"},getHopperHistories:{isArray:!1,method:"get",url:t.baseUrl+"cm/contacts/:id/hopper_histories"},getHopperFinals:{isArray:!1,method:"get",url:t.baseUrl+"cm/contacts/:id/hopper_finals"},getJscriptySessions:{isArray:!1,method:"get",url:t.baseUrl+"cm/contacts/:id/jscripty_sessions"},uploadCsv:{isArray:!1,method:"post",url:t.baseUrl+"cm/contacts/csv"}}),t.cmHopper=e(t.baseUrl+"cm/hopper/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"cm/hopper/describe"},clone:{method:"post",url:t.baseUrl+"cm/hopper/:id/clone",params:{includeAll:"@includeAll"}},getPreview:{isArray:!1,method:"post",url:t.baseUrl+"cm/hopper/preview"},getOpenContacts:{isArray:!1,method:"get",url:t.baseUrl+"cm/hopper/opencontacts"}}),t.cmHopperBlack=e(t.baseUrl+"cm/hopper_black/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"cm/hopper_black/describe"},clone:{method:"post",url:t.baseUrl+"cm/hopper_black/:id/clone",params:{includeAll:"@includeAll"}}}),t.cmHopperFinal=e(t.baseUrl+"cm/hopper_final/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"cm/hopper_final/describe"},clone:{method:"post",url:t.baseUrl+"cm/hopper_final/:id/clone",params:{includeAll:"@includeAll"}},countContactsQueueCampaignHopperFinal:{isArray:!0,method:"get",url:t.baseUrl+"cm/hopper_final/voice/queue/countAttributes/:id"},countContactsIvrCampaignHopperFinal:{isArray:!0,method:"get",url:t.baseUrl+"cm/hopper_final/campaign/countAttributes/:id"},moveContactsQueueCampaignHopperFinal:{isArray:!0,method:"post",url:t.baseUrl+"cm/hopper_final/voice/queue/moveContacts/:id"},moveContactsIvrCampaignHopperFinal:{isArray:!0,method:"post",url:t.baseUrl+"cm/hopper_final/voice/campaign/moveContacts/:id"},checkContactHopper:{isArray:!1,method:"post",url:t.baseUrl+"cm/hopper_final/checkContactHopper"}}),t.cmHopperHistory=e(t.baseUrl+"cm/hopper_history/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"cm/hopper_history/describe"},clone:{method:"post",url:t.baseUrl+"cm/hopper_history/:id/clone",params:{includeAll:"@includeAll"}}}),t.cmCustomField=e(t.baseUrl+"cm/custom_fields/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"cm/custom_fields/describe"},clone:{method:"post",url:t.baseUrl+"cm/custom_fields/:id/clone",params:{includeAll:"@includeAll"}}}),t.cmList=e(t.baseUrl+"cm/lists/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"cm/lists/describe"},clone:{method:"post",url:t.baseUrl+"cm/lists/:id/clone",params:{includeAll:"@includeAll"}},addDisposition:{isArray:!1,method:"post",url:t.baseUrl+"cm/lists/:id/dispositions"},getDispositions:{isArray:!1,method:"get",url:t.baseUrl+"cm/lists/:id/dispositions"},addContacts:{isArray:!1,method:"post",url:t.baseUrl+"cm/lists/:id/contacts"},getContacts:{isArray:!0,method:"get",url:t.baseUrl+"cm/lists/:id/contacts"},getContactsCsv:{isArray:!1,method:"get",url:t.baseUrl+"cm/lists/:id/contacts/csv"},addCustomField:{isArray:!1,method:"post",url:t.baseUrl+"cm/lists/:id/fields"},getCustomFields:{isArray:!1,method:"get",url:t.baseUrl+"cm/lists/:id/fields"},addAgents:{isArray:!0,method:"post",url:t.baseUrl+"cm/lists/:id/users"},removeAgents:{isArray:!1,method:"delete",url:t.baseUrl+"cm/lists/:id/users"},getAgents:{isArray:!1,method:"get",url:t.baseUrl+"cm/lists/:id/users"}}),t.action=e(t.baseUrl+"actions/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"actions/describe"},clone:{method:"post",url:t.baseUrl+"actions/:id/clone",params:{includeAll:"@includeAll"}}}),t.automation=e(t.baseUrl+"automations/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"automations/describe"},clone:{method:"post",url:t.baseUrl+"automations/:id/clone",params:{includeAll:"@includeAll"}},addConditions:{isArray:!1,method:"post",url:t.baseUrl+"automations/:id/conditions"},getConditions:{isArray:!1,method:"get",url:t.baseUrl+"automations/:id/conditions"},addActions:{isArray:!1,method:"post",url:t.baseUrl+"automations/:id/actions"},getActions:{isArray:!1,method:"get",url:t.baseUrl+"automations/:id/actions"}}),t.cannedAnswer=e(t.baseUrl+"canned_answers/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"canned_answers/describe"},clone:{method:"post",url:t.baseUrl+"canned_answers/:id/clone",params:{includeAll:"@includeAll"}}}),t.condition=e(t.baseUrl+"conditions/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"conditions/describe"},clone:{method:"post",url:t.baseUrl+"conditions/:id/clone",params:{includeAll:"@includeAll"}}}),t.interval=e(t.baseUrl+"intervals/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"intervals/describe"},clone:{method:"post",url:t.baseUrl+"intervals/:id/clone",params:{includeAll:"@includeAll"}},addInterval:{isArray:!1,method:"post",url:t.baseUrl+"intervals/:id/sub_intervals"},getIntervals:{isArray:!1,method:"get",url:t.baseUrl+"intervals/:id/sub_intervals"},addIntervals:{isArray:!0,method:"post",url:t.baseUrl+"intervals/:id/sub_intervals/create_many"}}),t.pause=e(t.baseUrl+"pauses/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"pauses/describe"},clone:{method:"post",url:t.baseUrl+"pauses/:id/clone",params:{includeAll:"@includeAll"}}}),t.cdr=e(t.baseUrl+"cdr/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"cdr/describe"},clone:{method:"post",url:t.baseUrl+"cdr/:id/clone",params:{includeAll:"@includeAll"}}}),t.voiceQueuesLog=e(t.baseUrl+"voiceQueuesLog/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"voiceQueuesLog/describe"},clone:{method:"post",url:t.baseUrl+"voiceQueuesLog/:id/clone",params:{includeAll:"@includeAll"}}}),t.schedule=e(t.baseUrl+"schedules/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"schedules/describe"},clone:{method:"post",url:t.baseUrl+"schedules/:id/clone",params:{includeAll:"@includeAll"}}}),t.sound=e(t.baseUrl+"sounds/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"sounds/describe"},clone:{method:"post",url:t.baseUrl+"sounds/:id/clone",params:{includeAll:"@includeAll"}},download:{isArray:!1,method:"get",url:t.baseUrl+"sounds/:id/download"},delete:{isArray:!1,method:"delete",url:t.baseUrl+"sounds/:id"}}),t.tag=e(t.baseUrl+"tags/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"tags/describe"},clone:{method:"post",url:t.baseUrl+"tags/:id/clone",params:{includeAll:"@includeAll"}}}),t.template=e(t.baseUrl+"templates/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"templates/describe"},clone:{method:"post",url:t.baseUrl+"templates/:id/clone",params:{includeAll:"@includeAll"}}}),t.trigger=e(t.baseUrl+"triggers/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"triggers/describe"},clone:{method:"post",url:t.baseUrl+"triggers/:id/clone",params:{includeAll:"@includeAll"}},addAllCondition:{isArray:!1,method:"post",url:t.baseUrl+"triggers/:id/all_conditions"},addAnyCondition:{isArray:!1,method:"post",url:t.baseUrl+"triggers/:id/any_conditions"},getAllConditions:{isArray:!1,method:"get",url:t.baseUrl+"triggers/:id/all_conditions"},getAnyConditions:{isArray:!1,method:"get",url:t.baseUrl+"triggers/:id/any_conditions"},addAction:{isArray:!1,method:"post",url:t.baseUrl+"triggers/:id/actions"},getActions:{isArray:!1,method:"get",url:t.baseUrl+"triggers/:id/actions"}}),t.variable=e(t.baseUrl+"variables/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"variables/describe"},clone:{method:"post",url:t.baseUrl+"variables/:id/clone",params:{includeAll:"@includeAll"}}}),t.integration=e(t.baseUrl+"integrations/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"integrations/describe"},clone:{method:"post",url:t.baseUrl+"integrations/:id/clone",params:{includeAll:"@includeAll"}}}),t.integrationReport=e(t.baseUrl+"integrations/reports/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"integrations/reports/describe"},clone:{method:"post",url:t.baseUrl+"integrations/reports/:id/clone",params:{includeAll:"@includeAll"}}}),t.analyticCustomReport=e(t.baseUrl+"analytics/custom_reports/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"analytics/custom_reports/describe"},clone:{method:"post",url:t.baseUrl+"analytics/custom_reports/:id/clone",params:{includeAll:"@includeAll"}},preview:{isArray:!0,method:"get",url:t.baseUrl+"analytics/custom_reports/:id/preview"},run:{isArray:!1,method:"get",url:t.baseUrl+"analytics/custom_reports/:id/run"},query:{isArray:!1,method:"get",url:t.baseUrl+"analytics/custom_reports/:id/query"}}),t.analyticDefaultReport=e(t.baseUrl+"analytics/default_reports/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"analytics/default_reports/describe"},clone:{method:"post",url:t.baseUrl+"analytics/default_reports/:id/clone",params:{includeAll:"@includeAll"}},preview:{isArray:!0,method:"get",url:t.baseUrl+"analytics/default_reports/:id/preview"},run:{isArray:!1,method:"get",url:t.baseUrl+"analytics/default_reports/:id/run"},query:{isArray:!1,method:"get",url:t.baseUrl+"analytics/default_reports/:id/query"}}),t.analyticExtractedReport=e(t.baseUrl+"analytics/extracted_reports/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"analytics/extracted_reports/describe"},clone:{method:"post",url:t.baseUrl+"analytics/extracted_reports/:id/clone",params:{includeAll:"@includeAll"}},download:{isArray:!1,method:"get",url:t.baseUrl+"analytics/extracted_reports/:id/download"}}),t.analyticMetric=e(t.baseUrl+"analytics/metrics/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"analytics/metrics/describe"},clone:{method:"post",url:t.baseUrl+"analytics/metrics/:id/clone",params:{includeAll:"@includeAll"}}}),t.analyticFieldReport=e(t.baseUrl+"analytics/field_reports/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"analytics/field_reports/describe"},clone:{method:"post",url:t.baseUrl+"analytics/field_reports/:id/clone",params:{includeAll:"@includeAll"}},bulkCreate:{method:"post",url:t.baseUrl+"analytics/field_reports/create_many",isArray:!0},bulkDestroy:{method:"delete",url:t.baseUrl+"analytics/field_reports/destroy_many",isArray:!0},addFields:{isArray:!0,method:"post",url:t.baseUrl+"analytics/field_reports/:id/create_many"}}),t.analyticTreeReport=e(t.baseUrl+"analytics/tree_reports/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"analytics/tree_reports/describe"},clone:{method:"post",url:t.baseUrl+"analytics/tree_reports/:id/clone",params:{includeAll:"@includeAll"}}}),t.intSalesforceAccount=e(t.baseUrl+"integrations/salesforce/accounts/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"integrations/salesforce/accounts/describe"},clone:{method:"post",url:t.baseUrl+"integrations/salesforce/accounts/:id/clone",params:{includeAll:"@includeAll"}},getConfigurations:{isArray:!1,method:"get",url:t.baseUrl+"integrations/salesforce/accounts/:id/configurations"},addConfiguration:{isArray:!1,method:"post",url:t.baseUrl+"integrations/salesforce/accounts/:id/configurations"},getFields:{isArray:!1,method:"get",url:t.baseUrl+"integrations/salesforce/accounts/:id/fields"}}),t.intSalesforceConfiguration=e(t.baseUrl+"integrations/salesforce/configurations/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"integrations/salesforce/configurations/describe"},clone:{method:"post",url:t.baseUrl+"integrations/salesforce/configurations/:id/clone",params:{includeAll:"@includeAll"}},getFields:{isArray:!1,method:"get",url:t.baseUrl+"integrations/salesforce/configurations/:id/fields"},getSubjects:{isArray:!1,method:"get",url:t.baseUrl+"integrations/salesforce/configurations/:id/subjects"},getDescriptions:{isArray:!1,method:"get",url:t.baseUrl+"integrations/salesforce/configurations/:id/descriptions"}}),t.intSalesforceField=e(t.baseUrl+"integrations/salesforce/fields/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"integrations/salesforce/fields/describe"},clone:{method:"post",url:t.baseUrl+"integrations/salesforce/fields/:id/clone",params:{includeAll:"@includeAll"}}}),t.intSugarcrmAccount=e(t.baseUrl+"integrations/sugarcrm/accounts/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"integrations/sugarcrm/accounts/describe"},clone:{method:"post",url:t.baseUrl+"integrations/sugarcrm/accounts/:id/clone",params:{includeAll:"@includeAll"}},getConfigurations:{isArray:!1,method:"get",url:t.baseUrl+"integrations/sugarcrm/accounts/:id/configurations"},addConfiguration:{isArray:!1,method:"post",url:t.baseUrl+"integrations/sugarcrm/accounts/:id/configurations"},getFields:{isArray:!1,method:"get",url:t.baseUrl+"integrations/sugarcrm/accounts/:id/fields"}}),t.intSugarcrmConfiguration=e(t.baseUrl+"integrations/sugarcrm/configurations/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"integrations/sugarcrm/configurations/describe"},clone:{method:"post",url:t.baseUrl+"integrations/sugarcrm/configurations/:id/clone",params:{includeAll:"@includeAll"}},getFields:{isArray:!1,method:"get",url:t.baseUrl+"integrations/sugarcrm/configurations/:id/fields"},getSubjects:{isArray:!1,method:"get",url:t.baseUrl+"integrations/sugarcrm/configurations/:id/subjects"},getDescriptions:{isArray:!1,method:"get",url:t.baseUrl+"integrations/sugarcrm/configurations/:id/descriptions"}}),t.intSugarcrmField=e(t.baseUrl+"integrations/sugarcrm/fields/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"integrations/sugarcrm/fields/describe"},clone:{method:"post",url:t.baseUrl+"integrations/sugarcrm/fields/:id/clone",params:{includeAll:"@includeAll"}}}),t.intDeskAccount=e(t.baseUrl+"integrations/desk/accounts/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"integrations/desk/accounts/describe"},clone:{method:"post",url:t.baseUrl+"integrations/desk/accounts/:id/clone",params:{includeAll:"@includeAll"}},getConfigurations:{isArray:!1,method:"get",url:t.baseUrl+"integrations/desk/accounts/:id/configurations"},addConfiguration:{isArray:!1,method:"post",url:t.baseUrl+"integrations/desk/accounts/:id/configurations"},getFields:{isArray:!1,method:"get",url:t.baseUrl+"integrations/desk/accounts/:id/fields"}}),t.intDeskConfiguration=e(t.baseUrl+"integrations/desk/configurations/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"integrations/desk/configurations/describe"},clone:{method:"post",url:t.baseUrl+"integrations/desk/configurations/:id/clone",params:{includeAll:"@includeAll"}},getFields:{isArray:!1,method:"get",url:t.baseUrl+"integrations/desk/configurations/:id/fields"},getSubjects:{isArray:!1,method:"get",url:t.baseUrl+"integrations/desk/configurations/:id/subjects"},getDescriptions:{isArray:!1,method:"get",url:t.baseUrl+"integrations/desk/configurations/:id/descriptions"},getTags:{isArray:!1,method:"get",url:t.baseUrl+"integrations/desk/configurations/:id/tags"},setTags:{isArray:!0,method:"post",url:t.baseUrl+"integrations/desk/configurations/:id/tags"}}),t.intDeskField=e(t.baseUrl+"integrations/desk/fields/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"integrations/desk/fields/describe"},clone:{method:"post",url:t.baseUrl+"integrations/desk/fields/:id/clone",params:{includeAll:"@includeAll"}}}),t.intZohoAccount=e(t.baseUrl+"integrations/zoho/accounts/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"integrations/zoho/accounts/describe"},clone:{method:"post",url:t.baseUrl+"integrations/zoho/accounts/:id/clone",params:{includeAll:"@includeAll"}},getConfigurations:{isArray:!1,method:"get",url:t.baseUrl+"integrations/zoho/accounts/:id/configurations"},addConfiguration:{isArray:!1,method:"post",url:t.baseUrl+"integrations/zoho/accounts/:id/configurations"},getFields:{isArray:!1,method:"get",url:t.baseUrl+"integrations/zoho/accounts/:id/fields"}}),t.intZohoConfiguration=e(t.baseUrl+"integrations/zoho/configurations/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"integrations/zoho/configurations/describe"},clone:{method:"post",url:t.baseUrl+"integrations/zoho/configurations/:id/clone",params:{includeAll:"@includeAll"}},getFields:{isArray:!1,method:"get",url:t.baseUrl+"integrations/zoho/configurations/:id/fields"},getSubjects:{isArray:!1,method:"get",url:t.baseUrl+"integrations/zoho/configurations/:id/subjects"},getDescriptions:{isArray:!1,method:"get",url:t.baseUrl+"integrations/zoho/configurations/:id/descriptions"}}),t.intZohoField=e(t.baseUrl+"integrations/zoho/fields/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"integrations/zoho/fields/describe"},clone:{method:"post",url:t.baseUrl+"integrations/zoho/fields/:id/clone",params:{includeAll:"@includeAll"}}}),t.intZendeskAccount=e(t.baseUrl+"integrations/zendesk/accounts/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"integrations/zendesk/accounts/describe"},clone:{method:"post",url:t.baseUrl+"integrations/zendesk/accounts/:id/clone",params:{includeAll:"@includeAll"}},getConfigurations:{isArray:!1,method:"get",url:t.baseUrl+"integrations/zendesk/accounts/:id/configurations"},addConfiguration:{isArray:!1,method:"post",url:t.baseUrl+"integrations/zendesk/accounts/:id/configurations"},getFields:{isArray:!1,method:"get",url:t.baseUrl+"integrations/zendesk/accounts/:id/fields"}}),t.intZendeskConfiguration=e(t.baseUrl+"integrations/zendesk/configurations/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"integrations/zendesk/configurations/describe"},clone:{method:"post",url:t.baseUrl+"integrations/zendesk/configurations/:id/clone",params:{includeAll:"@includeAll"}},getFields:{isArray:!1,method:"get",url:t.baseUrl+"integrations/zendesk/configurations/:id/fields"},getSubjects:{isArray:!1,method:"get",url:t.baseUrl+"integrations/zendesk/configurations/:id/subjects"},getDescriptions:{isArray:!1,method:"get",url:t.baseUrl+"integrations/zendesk/configurations/:id/descriptions"},getTags:{isArray:!1,method:"get",url:t.baseUrl+"integrations/zendesk/configurations/:id/tags"},setTags:{isArray:!0,method:"post",url:t.baseUrl+"integrations/zendesk/configurations/:id/tags"}}),t.intZendeskField=e(t.baseUrl+"integrations/zendesk/fields/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"integrations/zendesk/fields/describe"},clone:{method:"post",url:t.baseUrl+"integrations/zendesk/fields/:id/clone",params:{includeAll:"@includeAll"}}}),t.intFreshdeskAccount=e(t.baseUrl+"integrations/freshdesk/accounts/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"integrations/freshdesk/accounts/describe"},clone:{method:"post",url:t.baseUrl+"integrations/freshdesk/accounts/:id/clone",params:{includeAll:"@includeAll"}},getConfigurations:{isArray:!1,method:"get",url:t.baseUrl+"integrations/freshdesk/accounts/:id/configurations"},addConfiguration:{isArray:!1,method:"post",url:t.baseUrl+"integrations/freshdesk/accounts/:id/configurations"},getFields:{isArray:!1,method:"get",url:t.baseUrl+"integrations/freshdesk/accounts/:id/fields"}}),t.intFreshdeskConfiguration=e(t.baseUrl+"integrations/freshdesk/configurations/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"integrations/freshdesk/configurations/describe"},clone:{method:"post",url:t.baseUrl+"integrations/freshdesk/configurations/:id/clone",params:{includeAll:"@includeAll"}},getFields:{isArray:!1,method:"get",url:t.baseUrl+"integrations/freshdesk/configurations/:id/fields"},getSubjects:{isArray:!1,method:"get",url:t.baseUrl+"integrations/freshdesk/configurations/:id/subjects"},getDescriptions:{isArray:!1,method:"get",url:t.baseUrl+"integrations/freshdesk/configurations/:id/descriptions"},getTags:{isArray:!1,method:"get",url:t.baseUrl+"integrations/freshdesk/configurations/:id/tags"},setTags:{isArray:!0,method:"post",url:t.baseUrl+"integrations/freshdesk/configurations/:id/tags"}}),t.intFreshdeskField=e(t.baseUrl+"integrations/freshdesk/fields/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"integrations/freshdesk/fields/describe"},clone:{method:"post",url:t.baseUrl+"integrations/freshdesk/fields/:id/clone",params:{includeAll:"@includeAll"}}}),t.network=e(t.baseUrl+"networks/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"networks/describe"},clone:{method:"post",url:t.baseUrl+"networks/:id/clone",params:{includeAll:"@includeAll"}}}),t.chatQueueReport=e(t.baseUrl+"chat/reports/queue/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"chat/reports/queue/describe"},clone:{method:"post",url:t.baseUrl+"chat/reports/queue/:id/clone",params:{includeAll:"@includeAll"}}}),t.chatInternalMessage=e(t.baseUrl+"chat/internal/messages/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"chat/internal/messages/describe"},clone:{method:"post",url:t.baseUrl+"chat/internal/messages/:id/clone",params:{includeAll:"@includeAll"}}}),t.jscriptyAnswerReport=e(t.baseUrl+"jscripty/answers/reports/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"jscripty/answers/reports/describe"},clone:{method:"post",url:t.baseUrl+"jscripty/answers/reports/:id/clone",params:{includeAll:"@includeAll"}}}),t.jscriptyQuestionReport=e(t.baseUrl+"jscripty/questions/reports/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"jscripty/questions/reports/describe"},clone:{method:"post",url:t.baseUrl+"jscripty/questions/reports/:id/clone",params:{includeAll:"@includeAll"}}}),t.jscriptySessionReport=e(t.baseUrl+"jscripty/sessions/reports/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"jscripty/sessions/reports/describe"},clone:{method:"post",url:t.baseUrl+"jscripty/sessions/reports/:id/clone",params:{includeAll:"@includeAll"}},getQuestions:{isArray:!1,method:"get",url:t.baseUrl+"jscripty/sessions/reports/:id/questions"}}),t.smsQueueReport=e(t.baseUrl+"sms/reports/queue/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"sms/reports/queue/describe"},clone:{method:"post",url:t.baseUrl+"sms/reports/queue/:id/clone",params:{includeAll:"@includeAll"}}}),t.squareReport=e(t.baseUrl+"square/reports/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"square/reports/describe"},clone:{method:"post",url:t.baseUrl+"square/reports/:id/clone",params:{includeAll:"@includeAll"}}}),t.squareReportDetail=e(t.baseUrl+"square/details/reports/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"square/details/reports/describe"},clone:{method:"post",url:t.baseUrl+"square/details/reports/:id/clone",params:{includeAll:"@includeAll"}}}),t.jscriptyProject=e(t.baseUrl+"jscripty/projects/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"jscripty/projects/describe"},clone:{method:"post",url:t.baseUrl+"jscripty/projects/:id/clone",params:{includeAll:"@includeAll"}},getSessions:{isArray:!1,method:"get",url:t.baseUrl+"jscripty/projects/:id/sessions"},getAnswers:{isArray:!1,method:"get",url:t.baseUrl+"jscripty/projects/:id/answers"},getSummary:{isArray:!1,method:"get",url:t.baseUrl+"jscripty/projects/:id/summary"}}),t.setting=e(t.baseUrl+"settings/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"settings/describe"},clone:{method:"post",url:t.baseUrl+"settings/:id/clone",params:{includeAll:"@includeAll"}},addLogo:{isArray:!1,method:"post",url:t.baseUrl+"settings/:id/logo"},addLogoLogin:{isArray:!1,method:"post",url:t.baseUrl+"settings/:id/logo_login"},getLogo:{isArray:!1,method:"get",url:t.baseUrl+"settings/:id/logo"},getLogoLogin:{isArray:!1,method:"get",url:t.baseUrl+"settings/:id/logo_login"},gdpr:{isArray:!1,method:"get",url:t.baseUrl+"settings/:id/gdpr"}}),t.squareOdbc=e(t.baseUrl+"square/odbc/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"square/odbc/describe"},clone:{method:"post",url:t.baseUrl+"square/odbc/:id/clone",params:{includeAll:"@includeAll"}},test:{isArray:!1,method:"get",url:t.baseUrl+"square/odbc/:id/test"}}),t.squareProject=e(t.baseUrl+"square/projects/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"square/projects/describe"},clone:{method:"post",url:t.baseUrl+"square/projects/:id/clone",params:{includeAll:"@includeAll"}}}),t.squareRecording=e(t.baseUrl+"square/recordings/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"square/recordings/describe"},clone:{method:"post",url:t.baseUrl+"square/recordings/:id/clone",params:{includeAll:"@includeAll"}},download:{isArray:!1,method:"get",url:t.baseUrl+"square/recordings/:id/download"}}),t.team=e(t.baseUrl+"teams/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"teams/describe"},clone:{method:"post",url:t.baseUrl+"teams/:id/clone",params:{includeAll:"@includeAll"}},getQueues:{isArray:!0,method:"get",url:t.baseUrl+"teams/:id/queues"},addQueues:{isArray:!0,method:"post",url:t.baseUrl+"teams/:id/queues"},removeQueues:{isArray:!1,method:"delete",url:t.baseUrl+"teams/:id/queues"},addAgents:{isArray:!0,method:"post",url:t.baseUrl+"teams/:id/users"},removeAgents:{isArray:!1,method:"delete",url:t.baseUrl+"teams/:id/users"},getAgents:{isArray:!1,method:"get",url:t.baseUrl+"teams/:id/users"}}),t.license=e(t.baseUrl+"license/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"license/describe"},clone:{method:"post",url:t.baseUrl+"license/:id/clone",params:{includeAll:"@includeAll"}}}),t.campaign=e(t.baseUrl+"campaigns/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"campaigns/describe"},clone:{method:"post",url:t.baseUrl+"campaigns/:id/clone",params:{includeAll:"@includeAll"}},getHoppers:{isArray:!1,method:"get",url:t.baseUrl+"campaigns/:id/hoppers"},getHopperHistories:{isArray:!1,method:"get",url:t.baseUrl+"campaigns/:id/hopper_histories"},getHopperFinals:{isArray:!1,method:"get",url:t.baseUrl+"campaigns/:id/hopper_finals"},getHopperBlacks:{isArray:!1,method:"get",url:t.baseUrl+"campaigns/:id/hopper_black"},getLists:{isArray:!1,method:"get",url:t.baseUrl+"campaigns/:id/lists"},addLists:{isArray:!0,method:"post",url:t.baseUrl+"campaigns/:id/lists"},removeLists:{isArray:!0,method:"delete",url:t.baseUrl+"campaigns/:id/lists"},getBlackLists:{isArray:!1,method:"get",url:t.baseUrl+"campaigns/:id/blacklists"},addBlackLists:{isArray:!0,method:"post",url:t.baseUrl+"campaigns/:id/blacklists"},removeBlackLists:{isArray:!0,method:"delete",url:t.baseUrl+"campaigns/:id/blacklists"}}),t.migration=e(t.baseUrl+"migrations/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"migrations/describe"},clone:{method:"post",url:t.baseUrl+"migrations/:id/clone",params:{includeAll:"@includeAll"}}}),t.attachment=e(t.baseUrl+"attachments/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"attachments/describe"},clone:{method:"post",url:t.baseUrl+"attachments/:id/clone",params:{includeAll:"@includeAll"}},download:{isArray:!1,method:"get",url:t.baseUrl+"attachments/:id/download",responseType:"arraybuffer",cache:!1,transformResponse:function(e,t){var n=t();return{type:n["content-type"],length:n["content-length"],buffer:e}}}}),t}e.$inject=["$resource"],angular.module("motion").factory("api",e)}(),function(){"use strict";function e(e,t){t.setConfig({position:"top-right",sound:!1,html:!0,theme:"material"}),e.useLoader("$translatePartialLoader",{urlTemplate:"{part}/i18n/{lang}.json"}),e.preferredLanguage("en"),e.useSanitizeValueStrategy(null)}e.$inject=["$translateProvider","toastyConfigProvider"],angular.module("motion").config(e)}(),function(){"use strict";angular.module("motion")}(),function(){"use strict";function e(e,t,n){this.themes=e.themes;var a=n.get("motion.language");a&&t.use(a)}e.$inject=["motionTheming","$translate","$cookies"],angular.module("motion").controller("IndexController",e)}(),function(){"use strict";function e(e,t){return function(n){var a=new Date,o=new Date(n);return o.getDate()===a.getDate()&&o.getMonth()===a.getMonth()&&o.getFullYear()===a.getFullYear()?e("date")(o.getTime(),"shortTime"):o.getDate()===a.getDate()-1&&o.getMonth()===a.getMonth()&&o.getFullYear()===a.getFullYear()?t.instant("DASHBOARDS.YESTERDAY")+" "+e("date")(o.getTime(),"shortTime"):e("date")(o.getTime(),"MMM d, y h:mm a")}}function t(){return function(e,t,n){var a,o={},i=0;for(a in e)if(i>=n&&(o[a]=e[a]),++i===n+t)break;return o}}function n(){var e=[{value:"jan"},{value:"feb"},{value:"mar"},{value:"apr"},{value:"may"},{value:"jun"},{value:"jul"},{value:"aug"},{value:"sep"},{value:"oct"},{value:"nov"},{value:"dec"}],t=[{value:"1"},{value:"2"},{value:"3"},{value:"4"},{value:"5"},{value:"6"},{value:"7"},{value:"8"},{value:"9"},{value:"10"},{value:"11"},{value:"12"}],n=[{value:"mon"},{value:"tue"},{value:"wed"},{value:"thu"},{value:"fri"},{value:"sat"},{value:"sun"}],a=[1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31];return{getMonthName:function(){return e},getMonthNumber:function(){return t},getDaysOfWeek:function(){return n},getDaysOfMonth:function(){return a}}}function a(e){return{Today:e.instant("DASHBOARDS.TODAY"),Yesterday:e.instant("DASHBOARDS.YESTERDAY"),"This Week":e.instant("DASHBOARDS.THIS_WEEK"),"Last Week":e.instant("DASHBOARDS.LAST_WEEK"),"This Month":e.instant("DASHBOARDS.THIS_MONTH"),"Last Month":e.instant("DASHBOARDS.LAST_MONTH"),"This Year":e.instant("DASHBOARDS.THIS_YEAR"),"Last Year":e.instant("DASHBOARDS.LAST_YEAR"),January:e.instant("DASHBOARDS.JANUARY"),February:e.instant("DASHBOARDS.FEBRUARY"),March:e.instant("DASHBOARDS.MARCH"),April:e.instant("DASHBOARDS.APRIL"),May:e.instant("DASHBOARDS.MAY"),June:e.instant("DASHBOARDS.JUNE"),July:e.instant("DASHBOARDS.JULY"),August:e.instant("DASHBOARDS.AUGUST"),September:e.instant("DASHBOARDS.SEPTEMBER"),October:e.instant("DASHBOARDS.OCTOBER"),November:e.instant("DASHBOARDS.NOVEMBER"),December:e.instant("DASHBOARDS.DECEMBER"),Mon:e.instant("DASHBOARDS.MON"),Tue:e.instant("DASHBOARDS.TUE"),Wed:e.instant("DASHBOARDS.WED"),Thu:e.instant("DASHBOARDS.THU"),Fri:e.instant("DASHBOARDS.FRI"),Sat:e.instant("DASHBOARDS.SAT"),Sun:e.instant("DASHBOARDS.SUN")}}function o(){return{enqueue:function(e){this.tail=this.tail?this.tail.finally(e):e()}}}e.$inject=["$filter","$translate"],a.$inject=["$translate"],angular.module("motion").filter("limitObjectFromTo",t).filter("formatdate",e).factory("IndexFactory",n).factory("dateFilterLocalizationFactory",a).factory("Sequence",o)}(),function(){"use strict";function e(e,t,n){n.html5Mode(!0),t.otherwise("/dashboards/general");var a;angular.injector(["ngCookies"]).invoke(["$cookies",function(e){a=e}]);var o=a.get("motion.layoutStyle")||"verticalNavigation",i={verticalNavigation:{main:"app/core/layouts/vertical-navigation.html",toolbar:"app/toolbar/layouts/vertical-navigation/toolbar.html",navigation:"app/navigation/layouts/vertical-navigation/navigation.html",header:"app/header/layouts/vertical-navigation/header.html",footer:"app/footer/layouts/vertical-navigation/footer.html"},verticalNavigationFullwidthToolbar:{main:"app/core/layouts/vertical-navigation-fullwidth-toolbar.html",toolbar:"app/toolbar/layouts/vertical-navigation-fullwidth-toolbar/toolbar.html",navigation:"app/navigation/layouts/vertical-navigation/navigation.html"},verticalNavigationFullwidthToolbar2:{main:"app/core/layouts/vertical-navigation-fullwidth-toolbar-2.html",toolbar:"app/toolbar/layouts/vertical-navigation-fullwidth-toolbar-2/toolbar.html",navigation:"app/navigation/layouts/vertical-navigation-fullwidth-toolbar-2/navigation.html"},horizontalNavigation:{main:"app/core/layouts/horizontal-navigation.html",toolbar:"app/toolbar/layouts/horizontal-navigation/toolbar.html",navigation:"app/navigation/layouts/horizontal-navigation/navigation.html"},contentOnly:{main:"app/core/layouts/content-only.html",toolbar:"",navigation:""},contentWithToolbar:{main:"app/core/layouts/content-with-toolbar.html",toolbar:"app/toolbar/layouts/content-with-toolbar/toolbar.html",navigation:""}};e.state("app",{abstract:!0,views:{"main@":{templateUrl:i[o].main,controller:"MainController as vm"},"toolbar@app":{templateUrl:i[o].toolbar,controller:"ToolbarController as vm"},"navigation@app":{templateUrl:i[o].navigation,controller:"NavigationController as vm"},"quickPanel@app":{templateUrl:"app/quick-panel/quick-panel.html",controller:"QuickPanelController as vm"},"header@app":{templateUrl:i[o].header,controller:"HeaderController as vm"},"footer@app":{templateUrl:i[o].footer,controller:"FooterController as vm"}},resolve:{license:["apiResolver",function(e){return e.resolve("license@get")}],setting:["apiResolver",function(e){return e.resolve("setting@get",{id:1})}]}})}e.$inject=["$stateProvider","$urlRouterProvider","$locationProvider"],angular.module("motion").config(e)}(),function(){"use strict";function e(e,t,n){var a=e.$on("$stateChangeStart",function(){e.loadingProgress=!0}),o=e.$on("$stateChangeSuccess",function(){t(function(){e.loadingProgress=!1})});e.state=n,e.$on("$destroy",function(){a(),o()})}e.$inject=["$rootScope","$timeout","$state"],angular.module("motion").run(e)}(),function(){"use strict";function e(e,t){function n(){a=io({query:"id="+t.getCurrentUser().id,transports:["websocket","polling"]})}var a;return{connect:n,on:function(t,o){o=o||angular.noop,a||n(),a.on(t,function(){var t=arguments;e.$apply(function(){o.apply(a,t)})})},onWithoutApply:function(e,t){t=t||angular.noop,a||n(),a.on(e,function(){t.apply(a,arguments)})},emit:function(t,o,i){i=i||angular.noop,a||n(),a.emit(t,o,function(){var t=arguments;e.$apply(function(){i.apply(a,t)})})},removeAllListeners:function(e){a||n(),a.removeAllListeners(e)},removeListener:function(e,t){a||n(),a.removeListener(e,t)},disconnect:function(){a||n(),a.disconnect()}}}e.$inject=["$rootScope","Auth"],angular.module("motion").factory("socket",e)}(),function(){"use strict";function e(e,t,n,a,o,i){function s(){if(e.params.token&&e.params.userId)return i.removeCookies(),d.progresslogin=!0,n.put("motion.token",e.params.token),o.user.get({id:e.params.userId}).$promise.then(function(t){t&&(i.updateCurrentUser(t),e.go("app.dashboards.general"))}).finally(function(){d.progresslogin=!1});i.isLoggedIn()&&e.go("app.dashboards.general")}function r(){return d.progresslogin=!0,i.login(d.form).then(function(){return e.go("app.dashboards.general")}).catch(function(e){d.message=e.message}).finally(function(){d.progresslogin=!1})}function l(e){t.location.href="/api/auth/"+e}var d=this;d.progresslogin=!1,d.login=r,d.loginOauth=l,d.onInit=s,d.onInit()}e.$inject=["$state","$window","$cookies","$timeout","api","Auth"],angular.module("app.login").controller("LoginController",e)}(),function(){"use strict";function e(e,t,n,a,o,i,s,r,l,d){function c(){v.errors=[],r.analyticExtractedReport.save(v.extractedReport).$promise.then(function(e){v.extractedReports.unshift(e.toJSON()),o.success({title:"ExtractedReport properly created",msg:v.extractedReport.name?v.extractedReport.name+" has been created!":""}),g(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){v.errors=e.data.errors||[{message:e.toString(),type:"api.analyticExtractedReport.save"}];for(var t=0;t"+(e.name||"extractedReport")+" will be deleted.").ariaLabel("delete extractedReport").targetEvent(t).ok("OK").cancel("CANCEL");o.show(n).then(function(){A(e)},function(){console.log("CANCEL")})}function b(e){x.extractedReports=e||{count:0,rows:[]}}function f(){x.query.offset=(x.query.page-1)*x.query.limit,x.promise=l.analyticExtractedReport.get(x.query,b).$promise}function E(e,t){o.show({controller:"CreateOrEditExtractedReportDialogController",controllerAs:"vm",templateUrl:"app/main/apps/analytics/views/extractedReports/create/dialog.html",parent:angular.element(i.body),targetEvent:e,clickOutsideToClose:!0,locals:{extractedReport:t,extractedReports:x.extractedReports.rows,license:x.license}})}function A(e){l.analyticExtractedReport.delete({id:e.id}).$promise.then(function(){_.remove(x.extractedReports.rows,{id:e.id}),x.extractedReports.count-=1,x.extractedReports.rows.length||x.getExtractedReports(),c.success({title:"ExtractedReport deleted!",msg:e.name?e.name+" has been deleted!":""})}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){x.errors=e.data.errors||[{message:e.toString(),type:"SYSTEM:DELETEanalyticExtractedReport"}];for(var t=0;t"+x.selectedExtractedReports.length+" selected will be deleted.").ariaLabel("delete ExtractedReports").targetEvent(e).ok("OK").cancel("CANCEL");o.show(t).then(function(){x.selectedExtractedReports.forEach(function(e){A(e)}),x.selectedExtractedReports=[]})}function T(){x.selectedExtractedReports=[]}function C(){x.selectedExtractedReports=x.extractedReports.rows}var x=this;x.license=u,x.currentUser=m.getCurrentUser(),x.extractedReports=r||{count:0,rows:[]},x.table="extractedReports",x.listOrder="",x.listOrderAsc=null,x.selectedExtractedReports=[],x.query={fields:"createdAt,updatedAt,id,name,type,startDate,endDate,createdAt,status,output",sort:"-updatedAt",limit:10,page:1},x.editdialog=g,x.downloadfile=v,x.deleteconfirm=h,x.success=b,x.getExtractedReports=f,x.createOrEditExtractedReport=E,x.deleteExtractedReport=A,x.exportSelectedExtractedReports=y,x.deleteSelectedExtractedReports=S,x.deselectExtractedReports=T,x.selectAllExtractedReports=C;var O=!0,w=1;e.$watch("vm.query.filter",function(e,t){O?s(function(){O=!1}):(t||(w=x.query.page),e!==t&&(x.query.page=1),e||(x.query.page=w),x.getExtractedReports())})}e.$inject=["$scope","$window","$state","$mdSidenav","$mdDialog","$document","$timeout","extractedReports","api","msUtils","toasty","Auth","license","dateFilterLocalizationFactory"],angular.module("app.analytics").controller("ExtractedReportsController",e)}(),function(){"use strict";function e(e,t,n,a,o,i,s,r,l,d){function c(){v.errors=[],r.analyticMetric.save(v.metric).$promise.then(function(e){v.metrics.unshift(e.toJSON()),o.success({title:"Metric properly created",msg:v.metric.name?v.metric.name+" has been created!":""}),g(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){v.errors=e.data.errors||[{message:e.toString(),type:"api.analyticMetric.save"}];for(var t=0;t"+(e.name||"metric")+" will be deleted.").ariaLabel("delete metric").targetEvent(t).ok("OK").cancel("CANCEL");o.show(n).then(function(){E(e)},function(){console.log("CANCEL")})}function h(e){C.metrics=e||{count:0,rows:[]}}function b(){C.query.offset=(C.query.page-1)*C.query.limit,C.promise=l.analyticMetric.get(C.query,h).$promise}function f(e,t){o.show({controller:"CreateOrEditMetricDialogController",controllerAs:"vm",templateUrl:"app/main/apps/analytics/views/metrics/create/dialog.html",parent:angular.element(i.body),targetEvent:e,clickOutsideToClose:!0,locals:{metric:t,metrics:C.metrics.rows,license:C.license}})}function E(e){l.analyticMetric.delete({id:e.id}).$promise.then(function(){_.remove(C.metrics.rows,{id:e.id}),C.metrics.count-=1,C.metrics.rows.length||C.getMetrics(),c.success({title:"Metric deleted!",msg:e.name?e.name+" has been deleted!":""})}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){C.errors=e.data.errors||[{message:e.toString(),type:"SYSTEM:DELETEanalyticMetric"}];for(var t=0;t"+C.selectedMetrics.length+" selected will be deleted.").ariaLabel("delete Metrics").targetEvent(e).ok("OK").cancel("CANCEL");o.show(t).then(function(){C.selectedMetrics.forEach(function(e){E(e)}),C.selectedMetrics=[]})}function S(){C.selectedMetrics=[]}function T(){C.selectedMetrics=C.metrics.rows}var C=this;C.license=u,C.currentUser=m.getCurrentUser(),C.metrics=r||{count:0,rows:[]},C.table="metrics",C.listOrder="",C.listOrderAsc=null,C.selectedMetrics=[],C.query={fields:"createdAt,updatedAt,id,name,table,metric,description",sort:"-updatedAt",limit:10,page:1},C.arraytable=_.keyBy([{option:"Agent Report",value:"'report_agent'"},{option:"Call Report",value:"'report_call'"},{option:"Contacts",value:"'cm_contacts'"},{option:"CSquare Report",value:"'report_square'"},{option:"CSquare Details Report",value:"'report_square_details'"},{option:"Dialer Hopper Processing",value:"'cm_hopper'"},{option:"Dialer Hopper Logs",value:"'cm_hopper_history'"},{option:"Dialer Hopper Final",value:"'cm_hopper_final'"},{option:"Integration Report",value:"'report_integration'"},{option:"Jscripty Sessions",value:"'report_jscripty_sessions'"},{option:"Jscripty Questions",value:"'report_jscripty_questions'"},{option:"Jscripty Answers",value:"'report_jscripty_answers'"},{option:"Member Report",value:"'report_member'"},{option:"Queue Report",value:"'report_queue'"},{option:"Users",value:"'users'"},{option:"Voice Recordings",value:"'voice_recordings'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),C.editdialog=g,C.deleteconfirm=v,C.success=h,C.getMetrics=b,C.createOrEditMetric=f,C.deleteMetric=E,C.exportSelectedMetrics=A,C.deleteSelectedMetrics=y,C.deselectMetrics=S,C.selectAllMetrics=T;var x=!0,O=1;e.$watch("vm.query.filter",function(e,t){x?s(function(){x=!1}):(t||(O=C.query.page),e!==t&&(C.query.page=1),e||(C.query.page=O),C.getMetrics())})}e.$inject=["$scope","$window","$state","$mdSidenav","$mdDialog","$document","$timeout","metrics","api","msUtils","toasty","Auth","license","dateFilterLocalizationFactory"],angular.module("app.analytics").controller("MetricsController",e)}(),function(){"use strict";function e(e,t,n,a,o,i,s){function r(){c.errors=[];var e;o.analyticCustomReport.save({name:c.report.name,description:c.report.description,table:c.report.table,conditions:c.report.conditions,joins:c.report.joins,parent:c.currentNode.id}).$promise.then(function(t){e=t,n.success({title:"Report properly copied!",msg:c.report.name?c.report.name+" has been copied!":""});var a={fields:"field,alias,function,format,groupBy,orderBy,custom,MetricId",nolimit:!0};return a["analyticCustomReport"===i?"CustomReportId":"DefaultReportId"]=c.report.id,o.analyticFieldReport.get(a).$promise}).then(function(t){var t=_.map(t.rows,function(t){return _.extend({},t,{CustomReportId:e.id})});return o.analyticFieldReport.bulkCreate(t).$promise}).then(function(){n.success({title:"Fields copied!",msg:"Fields has been copied!"}),d()}).catch(function(e){n.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:COPYREPORT",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function l(e,t){c.currentNode=t.node}function d(){t.hide()}var c=this;c.errors=[],c.report=angular.copy(a),c.report.name+="-copy",c.treeCustomData=s,c.treeCustomConfig={core:{multiple:!1,animation:!0,error:function(e){console.error("treeCtrl: error from js tree - "+angular.toJson(e))},check_callback:!0,worker:!0},version:1,plugins:["wholerow"]},c.treeCustomEvents={select_node:l},c.copyReport=r,c.closeDialog=d}e.$inject=["$location","$mdDialog","toasty","report","api","apiName","treeCustomData"],angular.module("app.analytics").controller("CopyReportDialogController",e)}(),function(){"use strict";function e(e,t,n,a,o,i,s,r,l){function d(e){h.joinTables.splice(e,1)}function c(e,t,n){var a=_.find(h.tables,{name:n});a&&a.api&&i[a.api].describe().$promise.then(function(n){e[t]=_.difference(_.keys(n),["$promise","$resolved"])}).catch(function(e){console.error(e)})}function m(e){e&&(delete h.selectedItem,h.joinTables.push(e))}function u(){h.errors=[],h.report.joins=_.map(h.joinTables||[],function(e){return{parentKey:e.parentKey,foreignTable:e.name,foreignKey:e.foreignKey,type:e.type.toLowerCase()}}),h.report.joins=JSON.stringify(h.report.joins),i[s].save(h.report).$promise.then(function(e){h.reports.unshift(e),n.success({title:"Report properly created",msg:h.report.name?h.report.name+" has been created!":""}),v()}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){h.errors=e.data.errors||[{message:e.toString(),type:"api.analyticReport.save"}];for(var t=0;t"+e.field+" will be deleted.").ariaLabel("delete field").targetEvent(t).ok("OK").cancel("CANCEL");a.show(n).then(function(){v(e)},function(){console.log("CANCEL")})}function u(e){E.reportFields=e||{count:0,rows:[]}}function p(){E.promise=s.analyticFieldReport.get(E.query,u).$promise}function g(e,t){a.show({controller:"CreateOrEditReportFieldDialogController",controllerAs:"vm",templateUrl:"app/main/apps/analytics/views/reports/edit/field/dialog.html",parent:angular.element(o.body),targetEvent:e,clickOutsideToClose:!0,locals:{report:E.report,reportField:t,reportFields:E.reportFields.rows,metrics:E.metrics,columns:E.columns}})}function v(e){s.analyticFieldReport.delete({id:e.id}).$promise.then(function(){E.selectedReportFields=[],_.remove(E.reportFields.rows,{id:e.id}),E.reportFields.count-=1,E.reportFields.rows.length||E.getReportFields(),i.success({title:"Field deleted!",msg:e.field?e.field+" has been deleted!":""})}).catch(function(e){i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:DELETEFIELD",msg:e.data?JSON.stringify(e.data):e.toString()})})}function h(e){var t=a.confirm().title("Are you sure want to delete the selected fields?").htmlContent(""+E.selectedReportFields.length+" selected will be deleted.").ariaLabel("delete fields").targetEvent(e).ok("OK").cancel("CANCEL");a.show(t).then(function(){E.selectedReportFields.forEach(function(e){v(e)}),E.selectedReportFields=[]})}function b(e){var t=_.find(E.metrics,{id:e});return t?t.name:d.instant("ANALYTICS.NO_METRIC_FOUND")}function f(e){var t=_.find(E.metrics,{id:e});return t?t.metric:d.instant("ANALYTICS.NO_METRIC_FOUND")}var E=this;E.report={},E.reportFields={count:0,rows:[]},E.functions=_.keyBy(l.getFunctions,"value"),E.formats=_.keyBy(l.getFormats,"value"),E.groupBy=_.keyBy(l.getGroupBy,"value"),E.orderBy=_.keyBy(l.getOrderBy,"value"),E.selectedReportFields=[],E.query={fields:"createdAt,updatedAt,id,field,alias,function,format,groupBy,orderBy,custom,MetricId",nolimit:!0},E.sortableTable={animation:100,onSort:function(e){s.analyticFieldReport.addFields({id:E.report.id},e.models).$promise.then(function(e){E.reportFields.rows=e}).catch(function(e){i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:ADDFIELDS"})})}},E.init=c,E.deleteConfirm=m,E.success=u,E.getReportFields=p,E.createOrEditReportField=g,E.deleteReportField=v,E.deleteSelectedReportFields=h,E.getMetricName=b,E.getMetricValue=f;var A=!0;t.$watch("vm_rf.query.filter",function(e,t){A?n(function(){A=!1}):E.getReportFields()})}e.$inject=["$cookies","$scope","$timeout","$mdDialog","$document","toasty","api","describeTable","sqlUtil","$translate"],angular.module("app.analytics").controller("ReportFieldsController",e)}(),function(){"use strict";function e(){return{getFunctions:[{value:"SUM",option:function(e){return"SUM ("+e+")"}},{value:"COUNT",option:function(e){return"COUNT ("+e+")"}},{value:"COUNT DISTINCT",option:function(e){return"COUNT (DISTINCT "+e+")"}},{value:"MAX",option:function(e){return"MAX ("+e+")"}},{value:"MIN",option:function(e){return"MIN ("+e+")"}},{value:"AVG",option:function(e){return"AVG ("+e+")"}},{value:"GROUP_CONCAT",option:function(e){return"GROUP_CONCAT ("+e+")"}},{value:"GROUP_CONCAT ASC",option:function(e){return"GROUP_CONCAT ("+e+" ORDER BY "+e+" ASC)"}},{value:"GROUP_CONCAT DESC",option:function(e){return"GROUP_CONCAT ("+e+" ORDER BY "+e+" DESC)"}}],getFormats:[{value:"SEC_TO_TIME",option:function(e){return"SEC_TO_TIME ("+e+")"}},{value:"DATE",option:function(e){return"DATE ("+e+")"}},{value:"HOUR",option:function(e){return"HOUR ("+e+")"}},{value:"ROUND",option:function(e){return"ROUND ("+e+")"}},{value:"UNIX_TIMESTAMP",option:function(e){return"UNIX_TIMESTAMP ("+e+")"}}],getGroupBy:[{value:!1,option:function(){return"No"}},{value:!0,option:function(e){return"GROUP BY "+e}}],getOrderBy:[{value:"ASC",option:function(e){return"ORDER BY "+e+" ASC"}},{value:"DESC",option:function(e){return"ORDER BY "+e+" DESC"}}],getConditions:["=","!=","<","<=",">",">=","LIKE","NOT LIKE","IS NULL","IS NOT NULL","IS EMPTY","IS NOT EMPTY"]}}angular.module("app.analytics").factory("sqlUtil",e)}(),function(){"use strict";function e(e,t,n,a){function o(){e.go("app.analytics.reports")}function i(){c.report.conditions=angular.toJson(c.report.condition),n.analyticCustomReport.update({id:c.report.id},_.omit(c.report,"joins")).$promise.then(function(){t.success({title:"Report updated!",msg:c.report.name?c.report.name+" has been updated!":""})}).catch(function(e){t.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETreport",msg:e.data?JSON.stringify(e.data):e.toString()})})}function s(){c.columns=[],c.rows=[],c.error=!1,n.analyticFieldReport.get({fields:"field,alias",nolimit:!0,CustomReportId:c.report.id}).$promise.then(function(e){return c.columns=e?e.rows:[],n.analyticCustomReport.preview({id:c.report.id}).$promise}).then(function(e){c.rows=e}).catch(function(e){console.log(e),c.error={title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:analyticFieldReport",msg:e.data?e.data.message:e.toString(),sql:e.data&&e.data.parent?e.data.parent.sql:"NO QUERY"},t.error(c.error)})}function r(){return c.queryResult="Loading...",n.analyticCustomReport.query({id:c.report.id}).$promise.then(function(e){c.queryResult=e.sql}).catch(function(e){c.queryResult="",console.log(e),c.error={title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:analyticFieldReport",msg:e.data?e.data.message:e.toString(),sql:e.data&&e.data.parent?e.data.parent.sql:"NO QUERY"},t.error(c.error)})}function l(e,t){return d(e)?_.map(e,t).join(","):""}function d(e){return _.isArray(e)}var c=this;c.report=a||{},c.selectedTab=e.params.tab||0,c.gotoReports=o,c.saveReport=i,c.previewReport=s,c.queryReport=r,c.mapArray=l,c.isArray=d}e.$inject=["$state","toasty","api","report"],angular.module("app.analytics").controller("ReportController",e)}(),function(){"use strict";function e(e,t,n,a,o,i){function s(){t.hide()}var r=this;r.errors=[],r.report=angular.copy(a),r.closeDialog=s,function(){r.columns=[],r.rows=[],r.error=!1;var e={fields:"field,alias",nolimit:!0};e["analyticCustomReport"===i?"CustomReportId":"DefaultReportId"]=r.report.id,r.promise=o.analyticFieldReport.get(e).$promise.then(function(e){return r.columns=e?e.rows:[],o[i].preview({id:r.report.id}).$promise}).then(function(e){r.rows=e}).catch(function(e){console.log(e),r.error={title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:analyticFieldReport",msg:e.data?e.data.message:e.toString(),sql:e.data&&e.data.parent?e.data.parent.sql:"NO QUERY"},n.error(r.error)})}()}e.$inject=["$location","$mdDialog","toasty","report","api","apiName"],angular.module("app.analytics").controller("PreviewReportDialogController",e)}(),function(){"use strict";function e(e,t,n,a,o,i,s,r,l,d,c){function m(e,t){o.go("app.analytics.reports.edit",{id:e.id})}function u(e,t){a.show({controller:"CopyReportDialogController",controllerAs:"vm",templateUrl:"app/main/apps/analytics/views/reports/copy/dialog.html",parent:angular.element(n.body),targetEvent:t,clickOutsideToClose:!0,locals:{report:e,apiName:L.apiName,treeCustomData:L.treeCustomInstance.jstree(!0).get_json("#")}}).finally(function(){})}function p(e,t){a.show({controller:"PreviewReportDialogController",controllerAs:"vm",templateUrl:"app/main/apps/analytics/views/reports/preview/dialog.html",parent:angular.element(n.body),targetEvent:t,clickOutsideToClose:!0,locals:{report:e,apiName:L.apiName}})}function g(e,t){a.show({controller:"RunReportDialogController",controllerAs:"vm",templateUrl:"app/main/apps/analytics/views/reports/run/dialog.html",parent:angular.element(n.body),targetEvent:t,clickOutsideToClose:!0,locals:{report:e,apiName:L.apiName,currentPath:L.currentPath}})}function v(e,t){var n;r.analyticMetric.get({fields:"id,name,metric,table",nolimit:!0}).$promise.then(function(t){n=_.keyBy(t.rows,"id");var a={fields:"field,alias,function,format,groupBy,orderBy,custom,MetricId",nolimit:!0};return a["analyticCustomReport"===L.apiName?"CustomReportId":"DefaultReportId"]=e.id,r.analyticFieldReport.get(a).$promise}).then(function(t){for(var a=0;a"+e.name+" will be deleted.").ariaLabel("delete report").targetEvent(t).ok("OK").cancel("CANCEL");a.show(n).then(function(){y(e)},function(){console.log("CANCEL")})}function b(e){L.reports=e||{count:0,rows:[]}}function f(){L.query.offset=(L.query.page-1)*L.query.limit,L.apiName&&(L.promise=r[L.apiName].get(L.query,b).$promise)}function E(e,t){a.show({controller:"CreateOrEditReportDialogController",controllerAs:"vm",templateUrl:"app/main/apps/analytics/views/reports/create/dialog.html",parent:angular.element(n.body),targetEvent:e,clickOutsideToClose:!0,locals:{report:t,reports:L.reports.rows,apiName:L.apiName,currentNode:L.currentNode}})}function A(e,t,n){if("application/json"===e.file.type){var a=new FileReader;a.onload=function(e){console.log(e.target.result);try{var t=atob(e.target.result.split(",")[1]);t=angular.fromJson(t),r.analyticCustomReport.save({name:t.name,description:t.description,table:t.table,conditions:t.conditions,joins:t.joins,parent:L.currentNode.id}).$promise.then(function(e){L.reports.rows.unshift(e),d.success({title:"Report saved!",msg:e.name?e.name+" has been saved!":""});var n=_.map(t.fields,function(t){return _.extend({},t,{CustomReportId:e.id})});return r.analyticFieldReport.bulkCreate(n).$promise}).then(function(e){d.success({title:"Fields saved!",msg:"Fields has been saved!"})}).catch(function(e){d.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETanalyticReport",msg:e.data?JSON.stringify(e.data):e.toString()})})}catch(e){console.error(e),d.error({title:"Decode File Error",msg:e.toString()})}},a.readAsDataURL(e.file)}else d.error({title:"Format Error",msg:"Please use only json files"})}function y(e){L.apiName&&r[L.apiName].delete({id:e.id}).$promise.then(function(){_.remove(L.reports.rows,{id:e.id}),L.reports.count-=1,L.reports.rows.length||L.getReports(),d.success({title:"Report deleted!",msg:e.name?e.name+" has been deleted!":""})}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){L.errors=e.data.errors||[{message:e.toString(),type:"api.analyticreport.delete"}];for(var t=0;t"+L.selectedReports.length+" selected will be deleted.").ariaLabel("delete Reports").targetEvent(e).ok("OK").cancel("CANCEL");a.show(t).then(function(){L.selectedReports.forEach(function(e){y(e)}),L.selectedReports=[]})}function C(){L.selectedReports=[]}function x(){L.selectedReports=L.reports.rows}function O(e,t){L.treeDefaultInstance.jstree(!0).deselect_all(),L.treeDefaultInstance.jstree(!0).close_all(),L.currentNode=t.node,L.currentNode.custom=!0,L.currentPath=L.treeCustomInstance.jstree(!0).get_path(L.currentNode).join("/ "),L.apiName="analyticCustomReport",L.query.parent=t.node.id,f()}function w(e,t){L.treeCustomInstance.jstree(!0).deselect_all(),L.treeCustomInstance.jstree(!0).close_all(),L.currentNode=t.node,L.currentNode.custom=!1,L.currentPath=L.treeDefaultInstance.jstree(!0).get_path(L.currentNode).join("/ "),L.apiName="analyticDefaultReport",L.query.parent=t.node.id,f()}function I(e,t){var n=angular.toJson(L.treeCustomInstance.jstree(!0).get_json("#"));r.analyticTreeReport.update({id:2,tree:n}).$promise.then(function(){l.rows[1]&&(l.rows[1].tree=n),d.success({title:"Node Updated",msg:t.node.text?t.node.text+" has been updated!":"Node has been updated!"})}).catch(function(e){d.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:UPDATEanalyticTreeReport",msg:e.data?JSON.stringify(e.data):e.toString()})})}function R(e){return{core:{multiple:!1,animation:!0,error:function(e){console.error("treeCtrl: error from js tree - "+angular.toJson(e))},check_callback:!0,worker:!0},version:1,plugins:e?["contextmenu","dnd","search","state","wholerow"]:["search","state","wholerow"],contextmenu:{items:function(e){return{create:{label:s.instant("ANALYTICS.CREATE"),action:function(){e=L.treeCustomInstance.jstree(!0).create_node(e),L.treeCustomInstance.jstree(!0).edit(e)}},rename:{_disabled:"#"===e.parent,label:s.instant("ANALYTICS.RENAME"),action:function(){L.treeCustomInstance.jstree(!0).edit(e)}},remove:{_disabled:"#"===e.parent||"admin"!==L.currentUser.role&&0!==L.currentUser.crudPermissions,label:s.instant("ANALYTICS.REMOVE"),action:function(){var t=a.confirm().title("Are you sure want to delete the node?").htmlContent(""+(e.text?e.text:"Node")+" and its subnode will be deleted.").ariaLabel("delete node").ok("OK").cancel("CANCEL");a.show(t).then(function(){var t=L.treeCustomInstance.jstree(!0).get_parent(e);t=L.treeCustomInstance.jstree(!0).get_node(t),L.treeCustomInstance.jstree(!0).delete_node(e),N([e.id].concat(e.children_d||[])),L.treeCustomInstance.jstree(!0).select_node(t)})}}}}}}}function N(e){return r.analyticCustomReport.get({parent:e.join(","),fields:"id,name"}).$promise.then(function(e){e&&e.rows&&e.rows.forEach(function(e){y(e)})}).catch(function(e){d.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:DELETEreportsByParents",msg:e.data?JSON.stringify(e.data):e.toString()})})}function D(e){return e?{create_node:I,rename_node:I,move_node:I,delete_node:I,select_node:O}:{select_node:w}}var L=this;L.currentUser=c.getCurrentUser(),L.reports={count:0,rows:[]},L.selectedReports=[],L.query={fields:"createdAt,updatedAt,id,name,description,table,parent,conditions,joins",limit:10,page:1,sort:"-updatedAt"},L.apiName=null,L.currentPath="",L.customTree=!0,L.editstate=m,L.copydialog=u,L.previewdialog=p,L.rundialog=g,L.downloadfile=v,L.deleteconfirm=h,L.success=b,L.getReports=f,L.createOrEditReport=E,L.importReport=A,L.deleteReport=y,L.exportSelectedReports=S,L.deleteSelectedReports=T,L.deselectReports=C,L.selectAllReports=x,L.treeDefaultData=l.rows[0]?angular.fromJson(l.rows[0].tree):[],L.treeCustomData=l.rows[1]?angular.fromJson(l.rows[1].tree):[],L.treeDefaultConfig=R(!1),L.treeCustomConfig=R(!0),L.treeDefaultEvents=D(!1),L.treeCustomEvents=D(!0);var M=!0,k=1;e.$watch("vm.query.filter",function(e,n){M?t(function(){M=!1}):(n||(k=L.query.page),e!==n&&(L.query.page=1),e||(L.query.page=k),L.getReports())}),e.$watch("vm.search",function(e,t){L.treeDefaultInstance&&L.treeDefaultInstance.jstree(!0).search(e),L.treeCustomInstance&&L.treeCustomInstance.jstree(!0).search(e)})}e.$inject=["$scope","$timeout","$document","$mdDialog","$state","$window","$translate","api","treeReports","toasty","Auth"],angular.module("app.analytics").controller("ReportsController",e)}(),function(){"use strict";function e(e,t,n,a,o,i,s,r){function l(){m.export={id:m.report.id,name:m.report.name,startDate:new Date(moment().startOf("day")),endDate:new Date(moment().endOf("day")),output:"xlsx",fullPath:r?r+"/"+m.report.name:m.report.name}}function d(e){m.errors=[],m.exportDate=_.assign({},m.export,{startDate:moment(m.export.startDate).format("YYYY-MM-DD HH:mm:ss"),endDate:moment(m.export.endDate).format("YYYY-MM-DD HH:mm:ss")}),o[i].run(m.exportDate).$promise.then(function(a){"web"===m.export.output?t.show({controller:"WebReportDialogController",controllerAs:"vm",templateUrl:"app/main/apps/analytics/views/reports/run/web/dialog.html",parent:angular.element(s.body),targetEvent:e,skipHide:!0,locals:{apiName:i,exportDate:m.exportDate,results:a},resolve:{columns:["apiResolver",function(e){var t={fields:"field,alias",nolimit:!0};return t["analyticCustomReport"===i?"CustomReportId":"DefaultReportId"]=m.report.id,e.resolve("analyticFieldReport@get",t)}]}}):(n.success({title:"Report properly run!",msg:m.report.name?m.report.name+" has been run!":""}),c())}).catch(function(e){n.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:DESCRIBE",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function c(){t.hide()}var m=this;m.errors=[],m.report=angular.copy(a),m.export={},m.runReport=d,m.closeDialog=c,m.refreshDate=l,l()}e.$inject=["$location","$mdDialog","toasty","report","api","apiName","$document","currentPath"],angular.module("app.analytics").controller("RunReportDialogController",e)}(),function(){"use strict";function e(e,t,n,a,o,i,s){function r(){s.offset=(c.query.page-1)*c.query.limit,s.limit=c.query.limit,c.promise=n[i].run(s,l).$promise}function l(e){c.results=e||{count:0,rows:[]}}function d(){e.hide()}var c=this;c.errors=[],c.columns=a?a.rows:[],c.results=o||{rows:[],count:0},c.query={limit:10,page:1},c.closeDialog=d,c.getResults=r}e.$inject=["$mdDialog","toasty","api","columns","results","apiName","exportDate"],angular.module("app.analytics").controller("WebReportDialogController",e)}(),function(){"use strict";function e(e,t,n,a,o,i,s,r,l,d){function c(){v.errors=[],r.squareOdbc.save(v.odbc).$promise.then(function(e){v.odbcs.unshift(e.toJSON()),o.success({title:"Odbc properly created",msg:v.odbc.name?v.odbc.name+" has been created!":""}),g(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){v.errors=e.data.errors||[{message:e.toString(),type:"api.squareOdbc.save"}];for(var t=0;t"+(e.name||"odbc")+" will be deleted.").ariaLabel("delete odbc").targetEvent(t).ok("OK").cancel("CANCEL");o.show(n).then(function(){A(e)},function(){console.log("CANCEL")})}function b(e){x.odbcs=e||{count:0,rows:[]}}function f(){x.query.offset=(x.query.page-1)*x.query.limit,x.promise=l.squareOdbc.get(x.query,b).$promise}function E(e,t){o.show({controller:"CreateOrEditOdbcDialogController",controllerAs:"vm",templateUrl:"app/main/apps/callysquare/views/odbcs/create/dialog.html",parent:angular.element(i.body),targetEvent:e,clickOutsideToClose:!0,locals:{odbc:t,odbcs:x.odbcs.rows,license:x.license}})}function A(e){l.squareOdbc.delete({id:e.id}).$promise.then(function(){_.remove(x.odbcs.rows,{id:e.id}),x.odbcs.count-=1,x.odbcs.rows.length||x.getODBC(),c.success({title:"Odbc deleted!",msg:e.name?e.name+" has been deleted!":""})}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){x.errors=e.data.errors||[{message:e.toString(),type:"SYSTEM:DELETEsquareOdbc"}];for(var t=0;t"+x.selectedODBC.length+" selected will be deleted.").ariaLabel("delete Odbcs").targetEvent(e).ok("OK").cancel("CANCEL");o.show(t).then(function(){x.selectedODBC.forEach(function(e){A(e)}),x.selectedODBC=[]})}function T(){x.selectedODBC=[]}function C(){x.selectedODBC=x.odbcs.rows}var x=this;x.license=u,x.currentUser=m.getCurrentUser(),x.odbcs=r||{count:0,rows:[]},x.table="odbcs",x.listOrder="",x.listOrderAsc=null,x.selectedODBC=[],x.query={fields:"createdAt,updatedAt,id,name,dsn,description",sort:"-updatedAt",limit:10,page:1},x.editdialog=g,x.testtestOdbc=v,x.deleteconfirm=h,x.success=b,x.getODBC=f,x.createOrEditOdbc=E,x.deleteOdbc=A,x.exportSelectedODBC=y,x.deleteSelectedODBC=S,x.deselectODBC=T,x.selectAllODBC=C;var O=!0,w=1;e.$watch("vm.query.filter",function(e,t){O?s(function(){O=!1}):(t||(w=x.query.page),e!==t&&(x.query.page=1),e||(x.query.page=w),x.getODBC())})}e.$inject=["$scope","$window","$state","$mdSidenav","$mdDialog","$document","$timeout","odbcs","api","msUtils","toasty","Auth","license","dateFilterLocalizationFactory"],angular.module("app.callysquare").controller("OdbcsController",e)}(),function(){"use strict";function e(e,t,n,a,o,i,s,r){function l(){u.errors=[],o.squareProject.save(u.project).$promise.then(function(e){u.projects.unshift(e),t.success({title:"Project properly created",msg:u.project.name?u.project.name+" has been created!":""}),m(e),u.openFromEditor&&(u.newWindow?s.open("/callysquare/projects/"+e.id,"_blank"):r.go("app.callysquare.projects.edit",{id:e.id}))}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){u.errors=e.data.errors||[{message:e.toString(),type:"api.squareProject.save"}];for(var n=0;n5242880&&o.errors.push({message:"The file is too big. Max 5MB files are supported!"}),!o.errors.length){var t=new FileReader;t.onload=function(e){a(e.target.result)},t.readAsText(e.file)}}function a(n){n?(t(n),e.hide(n)):e.hide()}var o=this;o.errors=[],o.ngFlowOptions={chunkSize:5242880,maxChunkRetries:1,singleFile:!0,simultaneousUploads:1,testChunks:!1,progressCallbacksInterval:1e3,allowDuplicateUploads:!0},o.ngFlow={flow:{}},o.dropping=!1,o.closeDialog=a,o.fileAdded=n}e.$inject=["$mdDialog","saveCallback"],angular.module("app.callysquare").controller("MxGraphImportXMLController",e)}(),function(){"use strict";function e(e,t,n,a){function o(){s.errors=[],a.squareProject.update({id:s.project.id},{notes:s.project.notes,description:s.project.description}).$promise.then(function(n){t.success({title:"Project updated!",msg:s.project.name?s.project.name+" has been updated!":""}),e.hide(n)}).catch(function(e){console.error(e),s.errors=e.data.errors||[{message:e.toString(),type:"api.squareProject.update"}]})}function i(){e.hide()}var s=this;s.project=_.clone(n),s.closeDialog=i,s.save=o}e.$inject=["$mdDialog","toasty","project","api"],angular.module("app.callysquare").controller("MxGraphUpdateInfoController",e)}(),function(){"use strict";function e(e,t,n,a,o){function i(t){s.errors=[],t?(e.hide(),s.newWindow?a.open("/callysquare/projects/"+s.id,"_blank"):o.go("app.callysquare.projects.edit",{id:s.id})):e.hide()}var s=this;s.projects=n,s.id="",s.newWindow=!0,s.closeDialog=i}e.$inject=["$mdDialog","toasty","projects","$window","$state"],angular.module("app.callysquare").controller("MxGraphOpenProjectController",e)}(),function(){"use strict";function e(e,t,n,a,o,i,s){function r(){delete d.project.id,o.squareProject.save(d.project).$promise.then(function(n){t.success({title:"Project properly created",msg:d.project.name?d.project.name+" has been created!":""}),e.hide(n),d.newWindow?i.open("/callysquare/projects/"+n.id,"_blank"):s.go("app.callysquare.projects.edit",{id:n.id})}).catch(function(e){console.error(e),d.errors=e.data.errors||[{message:e.toString(),type:"api.squareProject.save"}]})}function l(){e.hide()}var d=this;d.project=angular.copy(n),d.project.name+="_new",d.project.preproduction=a,d.newWindow=!0,d.closeDialog=l,d.save=r}e.$inject=["$mdDialog","toasty","project","currentXML","api","$window","$state"],angular.module("app.callysquare").controller("MxGraphSaveProjectAsController",e)}(),function(){"use strict";function e(e,t,n,a,o,i,s,r,l,d,c,m,u,p,g,v,h,b,f,E){function A(){new EditorUi(D,new Editor,document.getElementById("geEditor")).openString(D.project.preproduction,D.project.name,D.project)}function y(e,a){n.show({controller:"MxGraphDialogController",controllerAs:"vm",templateUrl:"app/main/apps/callysquare/views/projects/edit/dialog/dialog.html",parent:angular.element(t.body),clickOutsideToClose:!0,locals:{users:s.rows||[],trunks:r.rows||[],queues:l.rows||[],sounds:d.rows||[],variables:c.rows||[],databases:m.rows||[],contexts:u.rows||[],projects:p.rows||[],intervals:g.rows||[],mailAccounts:v.rows||[],smsAccounts:f.rows||[],templates:h.rows||[],lists:b.rows||[],cell:e,saveCallback:a}})}function S(e){n.show({controller:"CreateOrEditProjectDialogController",controllerAs:"vm",templateUrl:"app/main/apps/callysquare/views/projects/create/dialog.html",parent:angular.element(t.body),clickOutsideToClose:!0,locals:{project:e,projects:p.rows,openFromEditor:!0}})}function T(){n.show({controller:"MxGraphOpenProjectController",controllerAs:"vm",templateUrl:"app/main/apps/callysquare/views/projects/edit/open/open.html",parent:angular.element(t.body),clickOutsideToClose:!0,locals:{projects:p.rows||[]}})}function C(e){n.show({controller:"MxGraphSaveProjectAsController",controllerAs:"vm",templateUrl:"app/main/apps/callysquare/views/projects/edit/saveAs/saveAs.html",parent:angular.element(t.body),clickOutsideToClose:!0,locals:{project:D.project,currentXML:e}}).then(function(e){e&&p.rows.push(e)})}function x(e){n.show({controller:"CreateOrEditVariableDialogController",controllerAs:"vm",templateUrl:"app/main/apps/tools/views/variables/create/dialog.html",parent:angular.element(t.body),clickOutsideToClose:!0,locals:{variable:e,variables:c.rows,license:null}})}function O(e){n.show({controller:"MxGraphUpdateInfoController",controllerAs:"vm",templateUrl:"app/main/apps/callysquare/views/projects/edit/info/info.html",parent:angular.element(t.body),targetEvent:e,clickOutsideToClose:!0,locals:{project:D.project}}).then(function(e){e&&_.merge(D.project,e)})}function w(e,a){n.show({controller:"MxGraphEditXMLController",controllerAs:"vm",templateUrl:"app/main/apps/callysquare/views/projects/edit/edit/edit.html",parent:angular.element(t.body),clickOutsideToClose:!0,locals:{currentXML:e,saveCallback:a}}).then(function(e){e&&(D.project.preproduction=e)})}function I(e){n.show({controller:"MxGraphImportXMLController",controllerAs:"vm",templateUrl:"app/main/apps/callysquare/views/projects/edit/import/import.html",parent:angular.element(t.body),clickOutsideToClose:!0,locals:{saveCallback:e}}).then(function(e){e&&(D.project.preproduction=e)})}function R(e,t){var n={preproduction:e};t&&(n.production=e),o.squareProject.update({id:D.project.id},n).$promise.then(function(e){a.success({title:"Project "+(t?"published":"saved")+"!",msg:D.project.name?D.project.name+" has been "+(t?"published":"saved")+"!":""}),D.project.preproduction=e.preproduction}).catch(function(e){a.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETsquareProject",msg:e.data?JSON.stringify(e.data):e.toString()})})}function N(){e.go("app.callysquare.projects")}var D=this;D.project=i||{},D.saveOrPublishProject=R,D.$onInit=A,D.openDialog=y,D.newProject=S,D.openProject=T,D.saveProjectAs=C,D.newVariable=x,D.updateInfo=O,D.editXML=w,D.importXML=I,D.gotoProjects=N}e.$inject=["$state","$document","$mdDialog","toasty","api","project","users","trunks","queues","sounds","variables","databases","contexts","projects","intervals","mailAccounts","templates","lists","smsAccounts","$window"],angular.module("app.callysquare").controller("ProjectController",e)}(),function(){"use strict";function e(e,t,n,a,o,i,s,r,l,d,c){function m(e,n){t.go("app.callysquare.projects.edit",{id:e.id})}function u(e,t){var n=s.confirm().title("Are you sure want to delete the project?").htmlContent(""+e.name+" will be deleted.").ariaLabel("delete project").targetEvent(t).ok("OK").cancel("CANCEL");s.show(n).then(function(){h(e)},function(){console.log("CANCEL")})}function p(e){y.projects=e||{count:0,rows:[]}}function g(){y.query.offset=(y.query.page-1)*y.query.limit,y.promise=o.squareProject.get(y.query,p).$promise}function v(e,t){s.show({controller:"CreateOrEditSquareProjectDialogController",controllerAs:"vm",templateUrl:"app/main/apps/callysquare/views/projects/create/dialog.html",parent:angular.element(r.body),targetEvent:e,clickOutsideToClose:!0,locals:{project:t,projects:y.projects.rows,openFromEditor:null}})}function h(e){o.squareProject.delete({id:e.id}).$promise.then(function(){_.remove(y.projects.rows,{id:e.id}),y.projects.count-=1,y.projects.rows.length||y.getProjects(),d.success({title:"Project deleted!",msg:e.name?e.name+" has been deleted!":""})}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){y.errors=e.data.errors||[{message:e.toString(),type:"api.project.delete"}];for(var t=0;t"+y.selectedProjects.length+" selected will be deleted.").ariaLabel("delete Projects").targetEvent(e).ok("OK").cancel("CANCEL");s.show(t).then(function(){y.selectedProjects.forEach(function(e){h(e)}),y.selectedProjects=[]})}function E(){y.selectedProjects=[]}function A(){y.selectedProjects=y.projects.rows}var y=this;y.currentUser=c.getCurrentUser(),y.projects=a||{count:0,rows:[]},y.table="projects",y.listOrder="",y.listOrderAsc=null,y.selectedProjects=[],y.query={fields:"id,name,description,notes",sort:"-updatedAt",limit:10,page:1},y.editstate=m,y.deleteconfirm=u,y.success=p,y.getProjects=g,y.createOrEditProject=v,y.deleteProject=h,y.exportSelectedProjects=b,y.deleteSelectedProjects=f,y.deselectProjects=E,y.selectAllProjects=A;var S=!0,T=1;e.$watch("vm.query.filter",function(e,t){S?l(function(){S=!1}):(t||(T=y.query.page),e!==t&&(y.query.page=1),e||(y.query.page=T),y.getProjects())})}e.$inject=["$scope","$state","$mdSidenav","projects","api","msUtils","$mdDialog","$document","$timeout","toasty","Auth"],angular.module("app.callysquare").controller("ProjectsController",e)}(),function(){"use strict";function e(e,t,n,a,o,i,s,r,l,d){function c(){v.errors=[],r.squareRecording.save(v.squareRecording).$promise.then(function(e){v.squareRecordings.unshift(e.toJSON()),o.success({title:"SquareRecording properly created",msg:v.squareRecording.name?v.squareRecording.name+" has been created!":""}),g(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){v.errors=e.data.errors||[{message:e.toString(),type:"api.squareRecording.save"}];for(var t=0;t"+(e.name||"squareRecording")+" will be deleted.").ariaLabel("delete squareRecording").targetEvent(t).ok("OK").cancel("CANCEL");o.show(n).then(function(){E(e)},function(){console.log("CANCEL")})}function h(e){C.squareRecordings=e||{count:0,rows:[]}}function b(){C.query.offset=(C.query.page-1)*C.query.limit,C.promise=l.squareRecording.get(C.query,h).$promise}function f(e,t){o.show({controller:"CreateOrEditSquareRecordingDialogController",controllerAs:"vm",templateUrl:"app/main/apps/callysquare/views/squareRecordings/create/dialog.html",parent:angular.element(i.body),targetEvent:e,clickOutsideToClose:!0,locals:{squareRecording:t,squareRecordings:C.squareRecordings.rows,license:C.license}})}function E(e){l.squareRecording.delete({id:e.id}).$promise.then(function(){_.remove(C.squareRecordings.rows,{id:e.id}),C.squareRecordings.count-=1,C.squareRecordings.rows.length||C.getSquareRecordings(),c.success({title:"SquareRecording deleted!",msg:e.name?e.name+" has been deleted!":""})}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){C.errors=e.data.errors||[{message:e.toString(),type:"SYSTEM:DELETEsquareRecording"}];for(var t=0;t"+C.selectedSquareRecordings.length+" selected will be deleted.").ariaLabel("delete SquareRecordings").targetEvent(e).ok("OK").cancel("CANCEL");o.show(t).then(function(){C.selectedSquareRecordings.forEach(function(e){E(e)}),C.selectedSquareRecordings=[]})}function S(){C.selectedSquareRecordings=[]}function T(){C.selectedSquareRecordings=C.squareRecordings.rows}var C=this;C.license=u,C.currentUser=m.getCurrentUser(),C.squareRecordings=r||{count:0,rows:[]},C.table="squareRecordings",C.listOrder="",C.listOrderAsc=null,C.selectedSquareRecordings=[],C.query={fields:"createdAt,updatedAt,id,filename,projectName,uniqueid,callerid,extension,audio,createdAt",sort:"-updatedAt",limit:10,page:1},C.downloadfile=g,C.deleteconfirm=v,C.success=h,C.getSquareRecordings=b,C.createOrEditSquareRecording=f,C.deleteSquareRecording=E,C.exportSelectedSquareRecordings=A,C.deleteSelectedSquareRecordings=y,C.deselectSquareRecordings=S,C.selectAllSquareRecordings=T;var x=!0,O=1;e.$watch("vm.query.filter",function(e,t){x?s(function(){x=!1}):(t||(O=C.query.page),e!==t&&(C.query.page=1),e||(C.query.page=O),C.getSquareRecordings())})}e.$inject=["$scope","$window","$state","$mdSidenav","$mdDialog","$document","$timeout","squareRecordings","api","msUtils","toasty","Auth","license","dateFilterLocalizationFactory"],angular.module("app.callysquare").controller("SquareRecordingsController",e)}(),function(){"use strict";function e(e,t,n,a,o,i,s,r,l,d,c,m,u,p){function g(e,t){n.go("app.chat.chatQueues.edit",{id:e.id,chatQueue:e})}function v(e,t){o.show({controller:"ChatQueueteamaddController",controllerAs:"vm",templateUrl:"app/main/apps/chat/views/chatQueues/edit/teamadd/teamadd.html",parent:angular.element(i.body),targetEvent:t,clickOutsideToClose:!0,locals:{chatQueue:e,chatQueues:w.chatQueues?w.chatQueues.rows:[]}})}function h(e,t){o.show({controller:"ChatQueueagentaddController",controllerAs:"vm",templateUrl:"app/main/apps/chat/views/chatQueues/edit/agentadd/agentadd.html",parent:angular.element(i.body),targetEvent:t,clickOutsideToClose:!0,locals:{chatQueue:e,chatQueues:w.chatQueues?w.chatQueues.rows:[],realtime:!1}})}function b(e,t){var n=o.confirm().title("Are you sure want to delete the chatQueue?").htmlContent(""+(e.name||"chatQueue")+" will be deleted.").ariaLabel("delete chatQueue").targetEvent(t).ok("OK").cancel("CANCEL");o.show(n).then(function(){S(e)},function(){console.log("CANCEL")})}function f(e,t){n.go("app.chat.realtime.queues",{})}function E(e){w.chatQueues=e||{count:0,rows:[]}}function A(){w.query.offset=(w.query.page-1)*w.query.limit,w.promise=l.chatQueue.get(w.query,E).$promise}function y(e,t){o.show({controller:"CreateOrEditChatQueueDialogController",controllerAs:"vm",templateUrl:"app/main/apps/chat/views/chatQueues/create/dialog.html",parent:angular.element(i.body),targetEvent:e,clickOutsideToClose:!0,locals:{chatQueue:t,chatQueues:w.chatQueues.rows,license:w.license}})}function S(e){l.chatQueue.delete({id:e.id}).$promise.then(function(){_.remove(w.chatQueues.rows,{id:e.id}),w.chatQueues.count-=1,w.chatQueues.rows.length||w.getChatQueues(),c.success({title:"ChatQueue deleted!",msg:e.name?e.name+" has been deleted!":""})}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){w.errors=e.data.errors||[{message:e.toString(),type:"SYSTEM:DELETEchatQueue"}];for(var t=0;t"+w.selectedChatQueues.length+" selected will be deleted.").ariaLabel("delete ChatQueues").targetEvent(e).ok("OK").cancel("CANCEL");o.show(t).then(function(){w.selectedChatQueues.forEach(function(e){S(e)}),w.selectedChatQueues=[]})}function x(){w.selectedChatQueues=[]}function O(){w.selectedChatQueues=w.chatQueues.rows}var w=this;w.license=u,w.currentUser=m.getCurrentUser(),w.chatQueues=r||{count:0,rows:[]},w.table="chatQueues",w.listOrder="",w.listOrderAsc=null,w.selectedChatQueues=[],w.query={fields:"createdAt,updatedAt,id,name,strategy,timeout,description",sort:"-updatedAt",limit:10,page:1},w.arraystrategy=_.keyBy([{option:"Beepall",value:"'beepall'"},{option:"RR Memory",value:"'rrmemory'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),w.editstate=g,w.teamadddialog=v,w.agentadddialog=h,w.deleteconfirm=b,w.gotorealtimegoto=f,w.success=E,w.getChatQueues=A,w.createOrEditChatQueue=y,w.deleteChatQueue=S,w.exportSelectedChatQueues=T,w.deleteSelectedChatQueues=C,w.deselectChatQueues=x,w.selectAllChatQueues=O;var I=!0,R=1;e.$watch("vm.query.filter",function(e,t){I?s(function(){I=!1}):(t||(R=w.query.page),e!==t&&(w.query.page=1),e||(w.query.page=R),w.getChatQueues())})}e.$inject=["$scope","$window","$state","$mdSidenav","$mdDialog","$document","$timeout","chatQueues","api","msUtils","toasty","Auth","license","dateFilterLocalizationFactory"],angular.module("app.chat").controller("ChatQueuesController",e)}(),function(){"use strict";function e(e,t,n,a,o,i,s,r,l,d){function c(){v.errors=[],r.chatQueue.save(v.chatQueue).$promise.then(function(e){v.chatQueues.unshift(e.toJSON()),o.success({title:"ChatQueue properly created",msg:v.chatQueue.name?v.chatQueue.name+" has been created!":""}),g(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){v.errors=e.data.errors||[{message:e.toString(),type:"api.chatQueue.save"}];for(var t=0;t":"",e}):[]:m.selectedItems=e.rows?_.map(e.rows,function(e){return e.penalty=e.UserChatQueue?"penalty "+e.UserChatQueue.penalty:"",e.internal=e.hasOwnProperty("internal")?"<"+e.internal+">":"",e}):[],m.dualMultiselectOptions.selectedItems=m.selectedItems,r.hasRole("admin")?n.user.get({fields:"id,name,internal,fullname",nolimit:!0,role:"agent"}).$promise:n.user.getAgents({id:r.getCurrentUser().id,fields:"id,name,internal,fullname",nolimit:!0,role:"agent"}).$promise}).then(function(e){m.items=e.rows?_.map(e.rows,function(e){return e.penalty=e.UserChatQueue?"penalty "+e.UserChatQueue.penalty:"",e.internal=e.internal?"<"+e.internal+">":"",e}):[],m.dualMultiselectOptions.items=_.differenceBy(m.items,m.selectedItems,"id")}).catch(function(e){t.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETUSERS.GETAGENTS",msg:e.status?JSON.stringify(e.data):e.toString()})})}function d(){return i}function c(){e.hide()}var m=this;m.chatQueue=a,m.penalty=0,m.items=[],m.selectedItems=[],m.closeDialog=c,m.isVoiceRealtime=d,m.dualMultiselectOptions={items:[],selectedItems:[],showSelectAndDeselectAll:!i,orderBy:"name",line1:"fullname",line2:["name","internal"],line3:"penalty",labelAll:s.instant("CHAT.ALL_AGENTS"),labelSelected:s.instant("CHAT.SELECTED_AGENTS"),transferCallback:function(e,a){n.chatQueue[a?"removeAgents":"addAgents"]({id:m.chatQueue.id,ids:_.map(e,m.isVoiceRealtime()&&a?"UserId":"id"),penalty:m.penalty||0,realtime:i||!1}).$promise.then(function(){t.success({title:"ChatQueue properly "+(a?"removed":"added"),msg:"ChatQueue has been "+(a?"removed":"added")+"!"}),a||l()}).catch(function(e){t.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:chatQueue.ADDAGENTS",msg:e.status?JSON.stringify(e.data):e.toString()})})}},l()}e.$inject=["$mdDialog","toasty","api","chatQueue","chatQueues","realtime","$translate","Auth"],angular.module("app.chat").controller("ChatQueueagentaddController",e)}(),function(){"use strict";function e(e,t,n,a,o){function i(){e.hide()}var s=this;s.chatQueue=a,s.penalty=0,s.items=[],s.selectedItems=[],s.dualMultiselectOptions={items:[],selectedItems:[],showSelectAndDeselectAll:!0,orderBy:"name",line1:"name",line2:"",line3:"",labelAll:o.instant("CHAT.ALL_TEAMS"),labelSelected:o.instant("CHAT.SELECTED_TEAMS"),transferCallback:function(e,a){n.chatQueue[a?"removeTeams":"addTeams"]({id:s.chatQueue.id,ids:_.map(e,"id"),penalty:s.penalty||0}).$promise.then(function(){t.success({title:"Team properly "+(a?"removed":"added"),msg:"Team has been "+(a?"removed":"added")+"!"})}).catch(function(e){t.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:chatQueue.ADDTEAMS",msg:e.status?JSON.stringify(e.data):e.toString()})})}},s.closeDialog=i,n.chatQueue.getTeams({id:s.chatQueue.id,fields:"id,name",nolimit:!0}).$promise.then(function(e){return s.selectedItems=e.rows?e.rows:[],s.dualMultiselectOptions.selectedItems=s.selectedItems,n.team.get({fields:"id,name",nolimit:!0}).$promise}).then(function(e){s.items=e.rows?e.rows:[],s.dualMultiselectOptions.items=_.differenceBy(s.items,s.selectedItems,"id")}).catch(function(e){t.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETTEAMS",msg:e.status?JSON.stringify(e.data):e.toString()})})}e.$inject=["$mdDialog","toasty","api","chatQueue","$translate"],angular.module("app.chat").controller("ChatQueueteamaddController",e)}(),function(){"use strict";function e(e,t,n,a,o,i,s,r,l,d){function c(e,t){n.show({controller:"ChatQueueteamaddController",controllerAs:"vm",templateUrl:"app/main/apps/chat/views/chatQueues/edit/teamadd/teamadd.html",parent:angular.element(a.body),targetEvent:t,clickOutsideToClose:!0,locals:{chatQueue:e,chatQueues:g.chatQueues?g.chatQueues.rows:[]}})}function m(e,t){n.show({controller:"ChatQueueagentaddController",controllerAs:"vm",templateUrl:"app/main/apps/chat/views/chatQueues/edit/agentadd/agentadd.html",parent:angular.element(a.body),targetEvent:t,clickOutsideToClose:!0,locals:{chatQueue:e,chatQueues:g.chatQueues?g.chatQueues.rows:[],realtime:!1}})}function u(){e.go("app.chat.chatQueues")}function p(){s.chatQueue.update({id:g.chatQueue.id},g.chatQueue).$promise.then(function(){r.success({title:"ChatQueue updated!",msg:g.chatQueue.name?g.chatQueue.name+" has been updated!":""})}).catch(function(e){r.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETchatQueue",msg:e.data?JSON.stringify(e.data):e.toString()})})}var g=this;g.currentUser=l.getCurrentUser(),g.license=o,g.setting=i,g.passwordPattern=g.setting.securePassword?/^(?=.*\d)(?=.*[a-z])(?=.*[A-Z])(?=.*[~!@#$%^&\-_=+\[\{\]\}.])[0-9a-zA-Z~!@#$%^&\-_=+\[\{\]\}.]{8,}$/:"",g.location=t.protocol()+"://"+t.host(),g.chatQueue=d||e.params.chatQueue||{},g.selectedTab=e.params.tab||0,g.teamadddialog=c,g.agentadddialog=m,g.alert=r.info,g.gotoChatQueues=u,g.saveChatQueue=p}e.$inject=["$state","$location","$mdDialog","$document","license","setting","api","toasty","Auth","chatQueue"],angular.module("app.chat").controller("ChatQueueController",e)}(),function(){"use strict";function e(e,t,n,a,o,i,s,r,l,d,c,m,u,p){function g(e,t){n.go("app.chat.chatWebsites.edit",{id:e.id,chatWebsite:e})}function v(e,t){n.go("app.chat.chatWebsites.edit",{id:e.id,tab:9})}function h(e,t){n.go("app.chat.chatWebsites.edit",{id:e.id,tab:10})}function b(e,t){var n=o.confirm().title("Are you sure want to delete the chatWebsite?").htmlContent(""+(e.name||"chatWebsite")+" will be deleted.").ariaLabel("delete chatWebsite").targetEvent(t).ok("OK").cancel("CANCEL");o.show(n).then(function(){y(e)},function(){console.log("CANCEL")})}function f(e){O.chatWebsites=e||{count:0,rows:[]}}function E(){O.query.offset=(O.query.page-1)*O.query.limit,O.promise=l.chatWebsite.get(O.query,f).$promise}function A(e,t){o.show({controller:"CreateOrEditChatWebsiteDialogController",controllerAs:"vm",templateUrl:"app/main/apps/chat/views/chatWebsites/create/dialog.html",parent:angular.element(i.body),targetEvent:e,clickOutsideToClose:!0,locals:{chatWebsite:t,chatWebsites:O.chatWebsites.rows,license:O.license}})}function y(e){l.chatWebsite.delete({id:e.id}).$promise.then(function(){_.remove(O.chatWebsites.rows,{id:e.id}),O.chatWebsites.count-=1,O.chatWebsites.rows.length||O.getChatWebsites(),c.success({title:"ChatWebsite deleted!",msg:e.name?e.name+" has been deleted!":""})}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){O.errors=e.data.errors||[{message:e.toString(),type:"SYSTEM:DELETEchatWebsite"}];for(var t=0;t"+O.selectedChatWebsites.length+" selected will be deleted.").ariaLabel("delete ChatWebsites").targetEvent(e).ok("OK").cancel("CANCEL");o.show(t).then(function(){O.selectedChatWebsites.forEach(function(e){y(e)}),O.selectedChatWebsites=[]})}function C(){O.selectedChatWebsites=[]}function x(){O.selectedChatWebsites=O.chatWebsites.rows}var O=this;O.license=u,O.currentUser=m.getCurrentUser(),O.chatWebsites=r||{count:0,rows:[]},O.table="chatWebsites",O.listOrder="",O.listOrderAsc=null,O.selectedChatWebsites=[],O.query={fields:"createdAt,updatedAt,id,token,name,key,address,remote,ListId,fidelity,timeout,agentAlias,closingQuestion,formSubmitSuccessMessage,formSubmitFailureMessage,color,color_focus,color_button,textColor,fontSize,header_shape,showAgentAvatar,animation,defaultWhiteLabel,whiteLabel,defaultLogo,conditionAgreement,autoclose,enableUnmanagedNote,unmanagedMessage,skipUnmanaged,sendUnmanaged,enableCustomerWriting,waitingTitle,waitingMessage,closingMessage,noteTitle,placeholderMessage,skipMessageButton,enableRating,ratingType,ratingStarsNumber,enableFeedback,forwardTranscript,forwardTranscriptMessage,closingMessageButton,download_transcript,enableCustomerAttachment,enquiry_enable,enquiry_forwarding,enquiry_forwarding_address,name_title,username_placeholder,email_title,email_placeholder,header_online,header_offline,start_chat_button,offline_chat_button,offlineMessageSubject,offlineMessageBody,header_offline,offline_message,message_title,enquiry_message_placeholder,enquiry_button,rating_message,rating_send,rating_skip,acceptMethod,acceptUrl,rejectMethod,rejectUrl,closeMethod,closeUrl,onlineForm,offlineForm,mapKey,mapKeyOffline,forwardTranscript,forwardOffline,forwardOfflineAddress,IntervalId,timezone,description",sort:"-updatedAt",limit:10,page:1},O.arrayheader_shape=_.keyBy([{option:"Rounded",value:"'rounded'"},{option:"Squared",value:"'squared'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),O.arrayratingType=_.keyBy([{option:"Star",value:"'star'"},{option:"Thumb",value:"'thumb'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),O.arrayacceptMethod=_.keyBy([{option:"HTTP GET",value:"'GET'"},{option:"HTTP POST",value:"'POST'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),O.arrayrejectMethod=_.keyBy([{option:"HTTP GET",value:"'GET'"},{option:"HTTP POST",value:"'POST'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),O.arraycloseMethod=_.keyBy([{option:"HTTP GET",value:"'GET'"},{option:"HTTP POST",value:"'POST'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),O.editstate=g,O.interactionsgoto=v,O.offlinemessagesgoto=h,O.deleteconfirm=b,O.success=f,O.getChatWebsites=E,O.createOrEditChatWebsite=A,O.deleteChatWebsite=y,O.exportSelectedChatWebsites=S,O.deleteSelectedChatWebsites=T,O.deselectChatWebsites=C,O.selectAllChatWebsites=x,l.cmList.get({fields:"id,name",sort:"name"}).$promise.then(function(e){O.lists=_.keyBy(e.rows||[],"id")}).catch(function(e){c.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETlists",msg:e.data?JSON.stringify(e.data):e.toString()})}),l.interval.get({fields:"id,name",sort:"name",IntervalId:"null"}).$promise.then(function(e){O.interval=_.keyBy(e.rows||[],"id")}).catch(function(e){c.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETinterval",msg:e.data?JSON.stringify(e.data):e.toString()})});var w=!0,I=1;e.$watch("vm.query.filter",function(e,t){w?s(function(){w=!1}):(t||(I=O.query.page),e!==t&&(O.query.page=1),e||(O.query.page=I),O.getChatWebsites())})}e.$inject=["$scope","$window","$state","$mdSidenav","$mdDialog","$document","$timeout","chatWebsites","api","msUtils","toasty","Auth","license","dateFilterLocalizationFactory"],angular.module("app.chat").controller("ChatWebsitesController",e)}(),function(){"use strict";function e(e,t,n,a,o,i,s,r,l,d){function c(){v.errors=[],r.chatWebsite.save(v.chatWebsite).$promise.then(function(e){v.chatWebsites.unshift(e.toJSON()),o.success({title:"ChatWebsite properly created",msg:v.chatWebsite.name?v.chatWebsite.name+" has been created!":""}),g(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){v.errors=e.data.errors||[{message:e.toString(),type:"api.chatWebsite.save"}];for(var t=0;t"+e.app+" will be deleted.").ariaLabel("delete application").targetEvent(a).ok("OK").cancel("CANCEL");t.show(o).then(function(){v.chatWebsiteApps.rows.splice(n,1),d()},function(){console.log("CANCEL")})}function r(e,o){if(v.chatWebsiteApps.rows.length){var i=v.chatWebsiteApps.rows[o]?v.chatWebsiteApps.rows[o]:v.chatWebsiteApps.rows[0];t.show({controller:"EditChatWebsiteApp"+(i.appType||i.app).toLowerCase()+"DialogController",controllerAs:"vm",templateUrl:"app/main/apps/chat/views/chatWebsites/edit/apps/"+(i.appType||i.app).toLowerCase()+"/dialog.html",parent:angular.element(n.body),targetEvent:e,clickOutsideToClose:!0,locals:{chatWebsiteApp:i,chatWebsite:v.chatWebsite}}).then(function(e){e&&(e.id?v.chatWebsiteApps.rows[o]=e:v.chatWebsiteApps.rows.splice(o,0,e),d())}).catch(function(e){e&&a.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:EDITMODALSHOW",msg:e.data?JSON.stringify(e.data):e.toString()})})}}function l(e,a){if(v.chatWebsiteApps.rows.length){var o=v.chatWebsiteApps.rows[a]?v.chatWebsiteApps.rows[a]:v.chatWebsiteApps.rows[0];t.show({controller:"EditChatWebsiteAppintervalDialogController",controllerAs:"vm",templateUrl:"app/main/apps/chat/views/chatWebsites/edit/apps/interval/dialog.html",parent:angular.element(n.body),targetEvent:e,clickOutsideToClose:!0,locals:{interval:{interval:o.interval,IntervalId:o.IntervalId,application:!0},intervals:[]}}).then(function(e){e&&(o.interval=e.interval||"*,*,*,*",o.IntervalId=e.IntervalId||null,d())})}}function d(){for(var t=1,n=[],a=0;a"+v.selectedChatWebsiteApps.length+" selected will be deleted.").ariaLabel("delete applications").targetEvent(e).ok("OK").cancel("CANCEL");t.show(n).then(function(){v.selectedChatWebsiteApps.forEach(function(e){_.remove(v.chatWebsiteApps.rows,{id:e.id})}),v.selectedChatWebsiteApps=[],d()})}var v=this;v.currentUser=o.getCurrentUser(),v.chatWebsite={},v.chatWebsiteApps={count:0,rows:[]},v.selectedChatWebsiteApps=[],v.query={sort:"priority"},v.apps=_.reject(_.sortBy([{app:"Interval",appType:"interval",types:["always","custom","list"],fields:[],isApp:!1},{app:"noop",appType:"noop",type:"noop",icon:"icon-apps",interval:"*,*,*,*",required:!0,isApp:!0,fields:[{title:"Value",name:"value",type:"text",param:0}]},{app:"gotop",appType:"gotop",type:"goto",icon:"icon-apps",interval:"*,*,*,*",isApp:!0,fields:[{title:"Priority",name:"priority",type:"number",required:!0,min:0,param:0}]},{app:"gotoif",appType:"gotoif",type:"gotoif",icon:"icon-apps",interval:"*,*,*,*",isApp:!0,fields:[{title:"Condition",name:"condition",type:"text",required:!0,param:0},{title:"truepriority",name:"truepriority",type:"number",min:1,required:!0,param:1},{title:"falsepriority",name:"falsepriority",type:"number",min:1,required:!0,param:2}]},{app:"queue",appType:"queue",foreignKey:"ChatQueueId",type:"queue",icon:"icon-apps",interval:"*,*,*,*",isApp:!0,extraApi:[{name:"queues",route:"chatQueue",filters:{fields:"id,name,type",sort:"name",nolimit:!0}}],fields:[{title:"Queue",name:"queue",type:"apiselect",values:"queues",value:"queue.name",option:"queue.name",defaultValue:300,required:!0,param:0},{title:"Timeout",name:"timeout",type:"number",min:0,required:!0,defaultValue:300,param:1}]},{app:"agent",appType:"agent",type:"agent",foreignKey:"UserId",icon:"icon-apps",interval:"*,*,*,*",isApp:!0,extraApi:[{name:"agents",route:"user",filters:{fields:"id,name",role:"agent",sort:"name",nolimit:!0}}],fields:[{title:"Agent",name:"agent",type:"apiselect",values:"agents",value:"agent.name",option:"agent.name",required:!0,param:0},{title:"Timeout",name:"timeout",type:"number",min:0,required:!0,defaultValue:30,param:1}]},{app:"close",appType:"close",type:"close",icon:"icon-apps",interval:"*,*,*,*",isApp:!0,fields:[{title:"Disposition",name:"disposition",type:"text",required:!0,param:0}]},{app:"autoreply",appType:"autoreply",type:"autoreply",icon:"icon-apps",interval:"*,*,*,*",isApp:!0,fields:[{title:"times",name:"times",type:"select",defaultValue:"1",values:[{option:"One Time",value:"1"},{option:"Always",value:"0"}],required:!0,param:0},{title:"Text",name:"text",type:"textarea",maxlength:255,required:!0,param:1}]}],["app"]),{isApp:!1}),v.list={group:{name:"opt1",pull:"clone"},animation:100,sort:!1},v.applications={group:{name:"opt2",put:"opt1"},animation:100,onAdd:function(e){r(e,e.newIndex)},onSort:function(e){d()}},v.init=i,v.deleteConfirm=s,v.getChatWebsiteApps=u,v.editChatWebsiteApp=r,v.editInterval=l,v.deleteChatWebsiteApp=p,v.deleteSelectedChatWebsiteApps=g,v.rewriteRouting=d,v.getIntervals=m}e.$inject=["api","$mdDialog","$document","toasty","Auth"],angular.module("app.chat").controller("ChatWebsiteActionsController",e)}(),function(){"use strict";function e(e,t){function n(e){s.chatWebsite=angular.copy(e),s.ngFlowOptions.target="/api/chat/websites/:id/avatar".replace(":id",s.chatWebsite.id),s.chatWebsite.images=[]}function a(e){var n=["png","jpg"];if(!_.includes(n,e.getExtension()))return t.error({title:"Invalid extension: "+e.getExtension(),msg:"Supported only: "+n.join()}),!1;if(e.size>8388608)return t.error({title:"File too big",msg:"The max allowed size for image files is 8 Mb"}),!1;var a={id:e.uniqueIdentifier,file:e,type:"uploading"};return s.chatWebsite.images.unshift(a),!0}function o(){s.ngFlow.flow.opts.headers={"X-Requested-With":"XMLHttpRequest",Authorization:"Bearer "+e.get("motion.token")},s.ngFlow.flow.upload()}function i(e,t){angular.forEach(s.chatWebsite.images,function(t,n){if(t.id===e.uniqueIdentifier){var a=new FileReader;a.readAsDataURL(t.file.file),a.onload=function(e){t.url=e.target.result},t.type="image"}})}var s=this;s.chatWebsite={},s.ngFlowOptions={maxChunkRetries:1,simultaneousUploads:1,testChunks:!1,progressCallbacksInterval:1e3,allowDuplicateUploads:!0},s.ngFlow={flow:{}},s.dropping=!1,s.fileAdded=a,s.upload=o,s.fileSuccess=i,s.init=n}e.$inject=["$cookies","toasty"],angular.module("app.chat").controller("ChatWebsiteagentAvatarController",e)}(),function(){"use strict";function e(e,t,n,a,o){function i(){r.errors=[];var e=[];r.agent.type&&"outbound"===r.agent.type.toLowerCase()&&"outboundDial"===r.agent.appType&&(r.agent.phone=a.cutdigits?(r.agent.prefix||"")+"${EXTEN:"+a.cutdigits+"}":(r.agent.prefix||"")+"${EXTEN}","none"!==a.recordingFormat?r.agent.options.indexOf("U(xcally-mixmonitor-context)")<0&&(r.agent.options+="U(xcally-mixmonitor-context)"):r.agent.options=r.agent.options.replace("U(xcally-mixmonitor-context)",""));var t=_.find(r.agents,{name:r.agent.agent});if(t&&(r.agent.UserId=t.id),r.agent.appType&&"custom"===r.agent.appType);else switch((r.agent.app||r.agent.appType).toLowerCase()){case"set":r.agent.appdata=r.agent.name+"="+r.agent.value;break;case"custom":break;default:e[0]=r.agent.agent,e[1]=r.agent.timeout,r.agent.appdata=e.join(",")}s(r.agent)}function s(t){e.hide(t)}var r=this;if(r.errors=[],r.title="CHAT.EDIT_"+(n.appType||n.app).toUpperCase(),r.agent=angular.copy(n),r.agent.appdata)switch(r.agent.appType?r.agent.appType.toLowerCase():r.agent.app.toLowerCase()){case"custom":break;case"autoreply":var l=r.agent.appdata.split(",");r.agent.times=isNaN(l[0])?l[0]:parseInt(l[0],10),r.agent.text=l.slice(1,l.length).join(",");break;case"message":r.agent.text=r.agent.appdata;break;case"set":r.agent.name=r.agent.appdata.split("=")[0],r.agent.value=r.agent.appdata.split("=")[1];break;case"agi":r.agent.project=r.agent.appdata;break;default:var d=r.agent.appdata.split(",");r.agent.agent=_.isEmpty(d[0])?d[0]:isNaN(d[0])?d[0]:parseInt(d[0],10),r.agent.timeout=_.isEmpty(d[1])?d[1]:isNaN(d[1])?d[1]:parseInt(d[1],10)}else r.agent.timeout=30;r.agent.type&&"outbound"===r.agent.type.toLowerCase()&&"outbounddial"===r.agent.appType.toLowerCase()&&(r.agent.prefix=r.agent.phone?r.agent.phone.split("$")[0]:void 0,r.agent.callerId=r.agent.callerID?"CALLERID(all)="+r.agent.callerID:void 0),r.saveChatWebsiteApp=i,r.closeDialog=s,o.user.get({fields:"id,name",role:"agent",sort:"name",nolimit:"true"}).$promise.then(function(e){r.agents=e.rows||[]}).catch(function(e){t.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETagents",msg:e.data?JSON.stringify(e.data):e.toString()})})}e.$inject=["$mdDialog","toasty","chatWebsiteApp","chatWebsite","api"],angular.module("app.chat").controller("EditChatWebsiteAppagentDialogController",e)}(),function(){"use strict";function e(e,t,n,a,o){function i(){r.errors=[];var e=[];if(r.autoreply.type&&"outbound"===r.autoreply.type.toLowerCase()&&"outboundDial"===r.autoreply.appType&&(r.autoreply.phone=a.cutdigits?(r.autoreply.prefix||"")+"${EXTEN:"+a.cutdigits+"}":(r.autoreply.prefix||"")+"${EXTEN}","none"!==a.recordingFormat?r.autoreply.options.indexOf("U(xcally-mixmonitor-context)")<0&&(r.autoreply.options+="U(xcally-mixmonitor-context)"):r.autoreply.options=r.autoreply.options.replace("U(xcally-mixmonitor-context)","")),r.autoreply.appType&&"custom"===r.autoreply.appType);else switch((r.autoreply.app||r.autoreply.appType).toLowerCase()){case"set":r.autoreply.appdata=r.autoreply.name+"="+r.autoreply.value;break;case"custom":break;default:e[0]=r.autoreply.times,e[1]=r.autoreply.text,r.autoreply.appdata=e.join(",")}s(r.autoreply)}function s(t){e.hide(t)}var r=this;if(r.errors=[],r.title="CHAT.EDIT_"+(n.appType||n.app).toUpperCase(),r.autoreply=angular.copy(n),r.autoreply.appdata)switch(r.autoreply.appType?r.autoreply.appType.toLowerCase():r.autoreply.app.toLowerCase()){case"custom":break;case"autoreply":var l=r.autoreply.appdata.split(",");r.autoreply.times=isNaN(l[0])?l[0]:parseInt(l[0],10),r.autoreply.text=l.slice(1,l.length).join(",");break;case"message":r.autoreply.text=r.autoreply.appdata;break;case"set":r.autoreply.name=r.autoreply.appdata.split("=")[0],r.autoreply.value=r.autoreply.appdata.split("=")[1];break;case"agi":r.autoreply.project=r.autoreply.appdata;break;default:var d=r.autoreply.appdata.split(",");r.autoreply.times=_.isEmpty(d[0])?d[0]:isNaN(d[0])?d[0]:parseInt(d[0],10),r.autoreply.text=_.isEmpty(d[1])?d[1]:isNaN(d[1])?d[1]:parseInt(d[1],10)}else r.autoreply.times=1;r.autoreply.type&&"outbound"===r.autoreply.type.toLowerCase()&&"outbounddial"===r.autoreply.appType.toLowerCase()&&(r.autoreply.prefix=r.autoreply.phone?r.autoreply.phone.split("$")[0]:void 0,r.autoreply.callerId=r.autoreply.callerID?"CALLERID(all)="+r.autoreply.callerID:void 0),r.saveChatWebsiteApp=i,r.closeDialog=s}e.$inject=["$mdDialog","toasty","chatWebsiteApp","chatWebsite","api"],angular.module("app.chat").controller("EditChatWebsiteAppautoreplyDialogController",e)}(),function(){"use strict";function e(e,t,n,a,o){function i(){r.errors=[];var e=[];if(r.close.type&&"outbound"===r.close.type.toLowerCase()&&"outboundDial"===r.close.appType&&(r.close.phone=a.cutdigits?(r.close.prefix||"")+"${EXTEN:"+a.cutdigits+"}":(r.close.prefix||"")+"${EXTEN}","none"!==a.recordingFormat?r.close.options.indexOf("U(xcally-mixmonitor-context)")<0&&(r.close.options+="U(xcally-mixmonitor-context)"):r.close.options=r.close.options.replace("U(xcally-mixmonitor-context)","")),r.close.appType&&"custom"===r.close.appType);else switch((r.close.app||r.close.appType).toLowerCase()){case"set":r.close.appdata=r.close.name+"="+r.close.value;break;case"custom":break;default:e[0]=r.close.disposition,r.close.appdata=e.join(",")}s(r.close)}function s(t){e.hide(t)}var r=this;if(r.errors=[],r.title="CHAT.EDIT_"+(n.appType||n.app).toUpperCase(),r.close=angular.copy(n),r.close.appdata)switch(r.close.appType?r.close.appType.toLowerCase():r.close.app.toLowerCase()){case"custom":break;case"autoreply":var l=r.close.appdata.split(",");r.close.times=isNaN(l[0])?l[0]:parseInt(l[0],10),r.close.text=l.slice(1,l.length).join(",");break;case"message":r.close.text=r.close.appdata;break;case"set":r.close.name=r.close.appdata.split("=")[0],r.close.value=r.close.appdata.split("=")[1];break;case"agi":r.close.project=r.close.appdata;break;default:var d=r.close.appdata.split(",");r.close.disposition=_.isEmpty(d[0])?d[0]:isNaN(d[0])?d[0]:parseInt(d[0],10)}r.close.type&&"outbound"===r.close.type.toLowerCase()&&"outbounddial"===r.close.appType.toLowerCase()&&(r.close.prefix=r.close.phone?r.close.phone.split("$")[0]:void 0,r.close.callerId=r.close.callerID?"CALLERID(all)="+r.close.callerID:void 0),r.saveChatWebsiteApp=i,r.closeDialog=s}e.$inject=["$mdDialog","toasty","chatWebsiteApp","chatWebsite","api"],angular.module("app.chat").controller("EditChatWebsiteAppcloseDialogController",e)}(),function(){"use strict";function e(e,t,n,a,o){function i(){r.errors=[];var e=[];if(r.gotoif.type&&"outbound"===r.gotoif.type.toLowerCase()&&"outboundDial"===r.gotoif.appType&&(r.gotoif.phone=a.cutdigits?(r.gotoif.prefix||"")+"${EXTEN:"+a.cutdigits+"}":(r.gotoif.prefix||"")+"${EXTEN}","none"!==a.recordingFormat?r.gotoif.options.indexOf("U(xcally-mixmonitor-context)")<0&&(r.gotoif.options+="U(xcally-mixmonitor-context)"):r.gotoif.options=r.gotoif.options.replace("U(xcally-mixmonitor-context)","")),r.gotoif.appType&&"custom"===r.gotoif.appType);else switch((r.gotoif.app||r.gotoif.appType).toLowerCase()){case"set":r.gotoif.appdata=r.gotoif.name+"="+r.gotoif.value;break;case"custom":break;default:e[0]=r.gotoif.condition,e[1]=r.gotoif.truepriority,e[2]=r.gotoif.falsepriority,r.gotoif.appdata=e.join(",")}s(r.gotoif)}function s(t){e.hide(t)}var r=this;if(r.errors=[],r.title="CHAT.EDIT_"+(n.appType||n.app).toUpperCase(),r.gotoif=angular.copy(n),r.gotoif.appdata)switch(r.gotoif.appType?r.gotoif.appType.toLowerCase():r.gotoif.app.toLowerCase()){case"custom":break;case"autoreply":var l=r.gotoif.appdata.split(",");r.gotoif.times=isNaN(l[0])?l[0]:parseInt(l[0],10),r.gotoif.text=l.slice(1,l.length).join(",");break;case"message":r.gotoif.text=r.gotoif.appdata;break;case"set":r.gotoif.name=r.gotoif.appdata.split("=")[0],r.gotoif.value=r.gotoif.appdata.split("=")[1];break;case"agi":r.gotoif.project=r.gotoif.appdata;break;default:var d=r.gotoif.appdata.split(",");r.gotoif.condition=_.isEmpty(d[0])?d[0]:isNaN(d[0])?d[0]:parseInt(d[0],10),r.gotoif.truepriority=_.isEmpty(d[1])?d[1]:isNaN(d[1])?d[1]:parseInt(d[1],10),r.gotoif.falsepriority=_.isEmpty(d[2])?d[2]:isNaN(d[2])?d[2]:parseInt(d[2],10)}r.gotoif.type&&"outbound"===r.gotoif.type.toLowerCase()&&"outbounddial"===r.gotoif.appType.toLowerCase()&&(r.gotoif.prefix=r.gotoif.phone?r.gotoif.phone.split("$")[0]:void 0,r.gotoif.callerId=r.gotoif.callerID?"CALLERID(all)="+r.gotoif.callerID:void 0),r.saveChatWebsiteApp=i,r.closeDialog=s}e.$inject=["$mdDialog","toasty","chatWebsiteApp","chatWebsite","api"],angular.module("app.chat").controller("EditChatWebsiteAppgotoifDialogController",e)}(),function(){"use strict";function e(e,t,n,a,o){function i(){r.errors=[];var e=[];if(r.gotop.type&&"outbound"===r.gotop.type.toLowerCase()&&"outboundDial"===r.gotop.appType&&(r.gotop.phone=a.cutdigits?(r.gotop.prefix||"")+"${EXTEN:"+a.cutdigits+"}":(r.gotop.prefix||"")+"${EXTEN}","none"!==a.recordingFormat?r.gotop.options.indexOf("U(xcally-mixmonitor-context)")<0&&(r.gotop.options+="U(xcally-mixmonitor-context)"):r.gotop.options=r.gotop.options.replace("U(xcally-mixmonitor-context)","")),r.gotop.appType&&"custom"===r.gotop.appType);else switch((r.gotop.app||r.gotop.appType).toLowerCase()){case"set":r.gotop.appdata=r.gotop.name+"="+r.gotop.value;break;case"custom":break;default:e[0]=r.gotop.priority,r.gotop.appdata=e.join(",")}s(r.gotop)}function s(t){e.hide(t)}var r=this;if(r.errors=[],r.title="CHAT.EDIT_"+(n.appType||n.app).toUpperCase(),r.gotop=angular.copy(n),r.gotop.appdata)switch(r.gotop.appType?r.gotop.appType.toLowerCase():r.gotop.app.toLowerCase()){case"custom":break;case"autoreply":var l=r.gotop.appdata.split(",");r.gotop.times=isNaN(l[0])?l[0]:parseInt(l[0],10),r.gotop.text=l.slice(1,l.length).join(",");break;case"message":r.gotop.text=r.gotop.appdata;break;case"set":r.gotop.name=r.gotop.appdata.split("=")[0],r.gotop.value=r.gotop.appdata.split("=")[1];break;case"agi":r.gotop.project=r.gotop.appdata;break;default:var d=r.gotop.appdata.split(",");r.gotop.priority=_.isEmpty(d[0])?d[0]:isNaN(d[0])?d[0]:parseInt(d[0],10)}r.gotop.type&&"outbound"===r.gotop.type.toLowerCase()&&"outbounddial"===r.gotop.appType.toLowerCase()&&(r.gotop.prefix=r.gotop.phone?r.gotop.phone.split("$")[0]:void 0,r.gotop.callerId=r.gotop.callerID?"CALLERID(all)="+r.gotop.callerID:void 0),r.saveChatWebsiteApp=i,r.closeDialog=s}e.$inject=["$mdDialog","toasty","chatWebsiteApp","chatWebsite","api"],angular.module("app.chat").controller("EditChatWebsiteAppgotopDialogController",e)}(),function(){"use strict";function e(e,t,n,a,o,i,s,r){function l(){switch(u.type){case"always":case"list":return"*,*,*,*";case"custom":var e=[];if("*"!==u.timeRangeFrom&&u.timeRangeFrom&&u.timeRangeTo){var t=(u.timeRangeFrom.getHours()<10?"0":"")+u.timeRangeFrom.getHours()+":"+(u.timeRangeFrom.getMinutes()<10?"0":"")+u.timeRangeFrom.getMinutes(),n=(u.timeRangeTo.getHours()<10?"0":"")+u.timeRangeTo.getHours()+":"+(u.timeRangeTo.getMinutes()<10?"0":"")+u.timeRangeTo.getMinutes();e.push(t+"-"+n)}else e.push("*");return u.dayOfWeekFrom?u.dayOfWeekTo?e.push(u.dayOfWeekFrom+"-"+u.dayOfWeekTo):e.push(u.dayOfWeekFrom):e.push("*"),u.monthDayFrom?u.monthDayTo?e.push(u.monthDayFrom+"-"+u.monthDayTo):e.push(u.monthDayFrom):e.push("*"),u.monthFrom?u.monthTo?e.push(u.monthFrom+"-"+u.monthTo):e.push(u.monthFrom):e.push("*"),e.join()}}function d(){u.errors=[],u.interval.interval=l(),r.interval.save(u.interval).$promise.then(function(e){u.intervals.push(e),s.success({title:"Interval properly created",msg:u.interval.name?u.interval.name+" has been created!":""}),m()}).catch(function(e){console.error(e),u.errors=e.data.errors||[{message:e.toString(),type:"api.interval.save"}]})}function c(){u.errors=[],u.interval.interval=l(),u.interval.application?("list"!==u.type&&(u.interval.IntervalId=null),m(u.interval)):r.interval.update({id:u.interval.id},u.interval).$promise.then(function(e){var t=_.find(u.intervals,{id:e.id});t&&_.merge(t,e),s.success({title:"Interval properly saved!",msg:"Interval has been saved!"}),m()}).catch(function(e){console.error(e),u.errors=e.data.errors||[{message:e.toString(),type:"api.interval.update"}]})}function m(e){t.hide(e)}var u=this;if(u.errors=[],u.title="TOOLS.EDIT_INTERVAL",u.interval=angular.copy(o),u.intervals=i,u.newInterval=!1,u.types=["always","custom","list"],u.daysOfWeek=a.getDaysOfWeek(),u.monthNumber=a.getMonthNumber(),u.monthName=a.getMonthName(),u.daysOfMonth=a.getDaysOfMonth(),u.interval)if("*,*,*,*"!==u.interval.interval){u.type="custom";var p=u.interval.interval.split(","),g=p[0],v=p[1],h=p[2],b=p[3];if("*"!==g){var f,E=g.split("-")[0],A=g.split("-")[1];(f=new Date).setHours(Number(E.split(":")[0])),f.setMinutes(Number(E.split(":")[1])),u.timeRangeFrom=f,(f=new Date).setHours(Number(A.split(":")[0])),f.setMinutes(Number(A.split(":")[1])),u.timeRangeTo=f}"*"!==v&&(u.dayOfWeekFrom=v.split("-")[0],u.dayOfWeekTo=v.split("-")[1]),"*"!==h&&(u.monthDayFrom=h.split("-")[0],u.monthDayTo=h.split("-")[1]),"*"!==b&&(u.monthFrom=b.split("-")[0],u.monthTo=b.split("-")[1])}else u.type="always";else u.interval={interval:"*,*,*,*"},u.type="always",u.title="TOOLS.NEW_INTERVAL",u.newInterval=!0;e.params.id&&!u.interval.application&&(u.interval.IntervalId=e.params.id),u.interval.IntervalId&&u.interval.application&&(u.type="list"),u.addNewInterval=d,u.saveInterval=c,u.closeDialog=m,u.interval.application&&r.interval.get({fields:"id,name,interval,IntervalId",IntervalId:"null",nolimit:!0}).$promise.then(function(e){u.intervals=e}).catch(function(e){console.error(e)})}e.$inject=["$state","$mdDialog","$mdToast","IndexFactory","interval","intervals","toasty","api"],angular.module("app.voice").controller("EditChatWebsiteAppintervalDialogController",e)}(),function(){"use strict";function e(e,t,n,a,o){function i(){r.errors=[];var e=[];if(r.noop.type&&"outbound"===r.noop.type.toLowerCase()&&"outboundDial"===r.noop.appType&&(r.noop.phone=a.cutdigits?(r.noop.prefix||"")+"${EXTEN:"+a.cutdigits+"}":(r.noop.prefix||"")+"${EXTEN}","none"!==a.recordingFormat?r.noop.options.indexOf("U(xcally-mixmonitor-context)")<0&&(r.noop.options+="U(xcally-mixmonitor-context)"):r.noop.options=r.noop.options.replace("U(xcally-mixmonitor-context)","")),r.noop.appType&&"custom"===r.noop.appType);else switch((r.noop.app||r.noop.appType).toLowerCase()){case"set":r.noop.appdata=r.noop.name+"="+r.noop.value;break;case"custom":break;default:e[0]=r.noop.value,r.noop.appdata=e.join(",")}s(r.noop)}function s(t){e.hide(t)}var r=this;if(r.errors=[],r.title="CHAT.EDIT_"+(n.appType||n.app).toUpperCase(),r.noop=angular.copy(n),r.noop.appdata)switch(r.noop.appType?r.noop.appType.toLowerCase():r.noop.app.toLowerCase()){case"custom":break;case"autoreply":var l=r.noop.appdata.split(",");r.noop.times=isNaN(l[0])?l[0]:parseInt(l[0],10),r.noop.text=l.slice(1,l.length).join(",");break;case"message":r.noop.text=r.noop.appdata;break;case"set":r.noop.name=r.noop.appdata.split("=")[0],r.noop.value=r.noop.appdata.split("=")[1];break;case"agi":r.noop.project=r.noop.appdata;break;default:var d=r.noop.appdata.split(",");r.noop.value=_.isEmpty(d[0])?d[0]:isNaN(d[0])?d[0]:parseInt(d[0],10)}r.noop.type&&"outbound"===r.noop.type.toLowerCase()&&"outbounddial"===r.noop.appType.toLowerCase()&&(r.noop.prefix=r.noop.phone?r.noop.phone.split("$")[0]:void 0,r.noop.callerId=r.noop.callerID?"CALLERID(all)="+r.noop.callerID:void 0),r.saveChatWebsiteApp=i,r.closeDialog=s}e.$inject=["$mdDialog","toasty","chatWebsiteApp","chatWebsite","api"],angular.module("app.chat").controller("EditChatWebsiteAppnoopDialogController",e)}(),function(){"use strict";function e(e,t,n,a,o){function i(){r.errors=[];var e=[];r.queue.type&&"outbound"===r.queue.type.toLowerCase()&&"outboundDial"===r.queue.appType&&(r.queue.phone=a.cutdigits?(r.queue.prefix||"")+"${EXTEN:"+a.cutdigits+"}":(r.queue.prefix||"")+"${EXTEN}","none"!==a.recordingFormat?r.queue.options.indexOf("U(xcally-mixmonitor-context)")<0&&(r.queue.options+="U(xcally-mixmonitor-context)"):r.queue.options=r.queue.options.replace("U(xcally-mixmonitor-context)",""));var t=_.find(r.queues,{name:r.queue.queue});if(t&&(r.queue[_.capitalize("chat")+"QueueId"]=t.id),r.queue.appType&&"custom"===r.queue.appType);else switch((r.queue.app||r.queue.appType).toLowerCase()){case"set":r.queue.appdata=r.queue.name+"="+r.queue.value;break;case"custom":break;default:e[0]=r.queue.queue,e[1]=r.queue.timeout,r.queue.appdata=e.join(",")}s(r.queue)}function s(t){e.hide(t)}var r=this;if(r.errors=[],r.title="CHAT.EDIT_"+(n.appType||n.app).toUpperCase(),r.queue=angular.copy(n),r.queue.appdata)switch(r.queue.appType?r.queue.appType.toLowerCase():r.queue.app.toLowerCase()){case"custom":break;case"autoreply":var l=r.queue.appdata.split(",");r.queue.times=isNaN(l[0])?l[0]:parseInt(l[0],10),r.queue.text=l.slice(1,l.length).join(",");break;case"message":r.queue.text=r.queue.appdata;break;case"set":r.queue.name=r.queue.appdata.split("=")[0],r.queue.value=r.queue.appdata.split("=")[1];break;case"agi":r.queue.project=r.queue.appdata;break;default:var d=r.queue.appdata.split(",");r.queue.queue=_.isEmpty(d[0])?d[0]:isNaN(d[0])?d[0]:parseInt(d[0],10),r.queue.timeout=_.isEmpty(d[1])?d[1]:isNaN(d[1])?d[1]:parseInt(d[1],10)}else r.queue.queue=300,r.queue.timeout=300;r.queue.type&&"outbound"===r.queue.type.toLowerCase()&&"outbounddial"===r.queue.appType.toLowerCase()&&(r.queue.prefix=r.queue.phone?r.queue.phone.split("$")[0]:void 0,r.queue.callerId=r.queue.callerID?"CALLERID(all)="+r.queue.callerID:void 0),r.saveChatWebsiteApp=i,r.closeDialog=s,o.chatQueue.get({fields:"id,name,type",sort:"name",nolimit:"true"}).$promise.then(function(e){r.queues=e.rows||[]}).catch(function(e){t.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETqueues",msg:e.data?JSON.stringify(e.data):e.toString()})})}e.$inject=["$mdDialog","toasty","chatWebsiteApp","chatWebsite","api"],angular.module("app.chat").controller("EditChatWebsiteAppqueueDialogController",e)}(),function(){"use strict";function e(e,t,n,a,o,i,s,r,l,d){function c(e){f.chatWebsite=e,f.query.id=f.chatWebsite.id,f.query.ChatWebsiteId=f.chatWebsite.id,f.getChatWebsiteChatCannedAnswers()}function m(e,t){var n=i.confirm().title("Are you sure want to delete the chatCannedAnswer?").htmlContent(""+(e.name||"chatCannedAnswer")+" will be deleted.").ariaLabel("delete chatCannedAnswer").targetEvent(t).ok("OK").cancel("CANCEL");i.show(n).then(function(){v(e)},function(){console.log("CANCEL")})}function u(e){f.chatWebsiteChatCannedAnswers=e||{count:0,rows:[]}}function p(){f.query.offset=(f.query.page-1)*f.query.limit,f.promise=l.chatWebsite.getAnswers(f.query,u).$promise}function g(e,t){i.show({controller:"CreateOrEditChatCannedAnswerDialogController",controllerAs:"vm",templateUrl:"app/main/apps/chat/views/chatWebsites/edit/chatCannedAnswers/dialog.html",parent:angular.element(s.body),targetEvent:e,clickOutsideToClose:!0,locals:{chatWebsite:f.chatWebsite,chatCannedAnswer:t,chatCannedAnswers:f.chatWebsiteChatCannedAnswers.rows,license:null}})}function v(e){l.cannedAnswer.delete({id:e.id}).$promise.then(function(){_.remove(f.chatWebsiteChatCannedAnswers.rows,{id:e.id}),f.chatWebsiteChatCannedAnswers.count-=1,f.chatWebsiteChatCannedAnswers.rows.length||f.getChatWebsiteChatCannedAnswers(),r.success({title:"ChatCannedAnswer deleted!",msg:e.name?e.name+" has been deleted!":""})}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){vm.errors=e.data.errors||[{message:e.toString(),type:"SYSTEM:GETchatWebsite"}];for(var t=0;t"+f.selectedChatWebsiteChatCannedAnswers.length+" selected will be deleted.").ariaLabel("delete chatCannedAnswers").targetEvent(e).ok("OK").cancel("CANCEL");i.show(t).then(function(){f.selectedChatWebsiteChatCannedAnswers.forEach(function(e){v(e)}),f.selectedChatWebsiteChatCannedAnswers=[]})}var f=this;f.currentUser=d.getCurrentUser(),f.chatWebsite={},f.chatWebsiteChatCannedAnswers={count:0,rows:[]},f.selectedChatWebsiteChatCannedAnswers=[],f.query={fields:"createdAt,updatedAt,id,key,value,description,createdAt",limit:10,page:1},f.init=c,f.deleteConfirm=m,f.success=u,f.getChatWebsiteChatCannedAnswers=p,f.createOrEditChatWebsiteChatCannedAnswer=g,f.exportSelectedChatWebsiteChatCannedAnswers=h,f.deleteChatWebsiteChatCannedAnswer=v,f.deleteSelectedChatWebsiteChatCannedAnswers=b;var E=!0,A=1;t.$watch("vm_dc.query.filter",function(e,t){E?o(function(){E=!1}):(t||(A=f.query.page),e!==t&&(f.query.page=1),e||(f.query.page=A),f.getChatWebsiteChatCannedAnswers())})}e.$inject=["$cookies","$scope","$state","$q","$timeout","$mdDialog","$document","toasty","api","Auth"],angular.module("app.chat").controller("ChatWebsiteChatCannedAnswersController",e)}(),function(){"use strict";function e(e,t,n,a,o,i,s,r,l,d){function c(){v.errors=[],r.cannedAnswer.save(v.chatCannedAnswer).$promise.then(function(e){v.chatCannedAnswers.unshift(e.toJSON()),o.success({title:"ChatCannedAnswer properly created",msg:v.chatCannedAnswer.name?v.chatCannedAnswer.name+" has been created!":""}),g(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){v.errors=e.data.errors||[{message:e.toString(),type:"api.cannedAnswer.save"}];for(var t=0;t"+(e.name||"chatDisposition")+" will be deleted.").ariaLabel("delete chatDisposition").targetEvent(t).ok("OK").cancel("CANCEL");i.show(n).then(function(){v(e)},function(){console.log("CANCEL")})}function u(e){f.chatWebsiteChatDispositions=e||{count:0,rows:[]}}function p(){f.query.offset=(f.query.page-1)*f.query.limit,f.promise=l.chatWebsite.getDispositions(f.query,u).$promise}function g(e,t){i.show({controller:"CreateOrEditChatDispositionDialogController",controllerAs:"vm",templateUrl:"app/main/apps/chat/views/chatWebsites/edit/chatDispositions/dialog.html",parent:angular.element(s.body),targetEvent:e,clickOutsideToClose:!0,locals:{chatWebsite:f.chatWebsite,chatDisposition:t,chatDispositions:f.chatWebsiteChatDispositions.rows,license:null}})}function v(e){l.chatDisposition.delete({id:e.id}).$promise.then(function(){_.remove(f.chatWebsiteChatDispositions.rows,{id:e.id}),f.chatWebsiteChatDispositions.count-=1,f.chatWebsiteChatDispositions.rows.length||f.getChatWebsiteChatDispositions(),r.success({title:"ChatDisposition deleted!",msg:e.name?e.name+" has been deleted!":""})}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){vm.errors=e.data.errors||[{message:e.toString(),type:"SYSTEM:GETchatWebsite"}];for(var t=0;t"+f.selectedChatWebsiteChatDispositions.length+" selected will be deleted.").ariaLabel("delete chatDispositions").targetEvent(e).ok("OK").cancel("CANCEL");i.show(t).then(function(){f.selectedChatWebsiteChatDispositions.forEach(function(e){v(e)}),f.selectedChatWebsiteChatDispositions=[]})}var f=this;f.currentUser=d.getCurrentUser(),f.chatWebsite={},f.chatWebsiteChatDispositions={count:0,rows:[]},f.selectedChatWebsiteChatDispositions=[],f.query={fields:"createdAt,updatedAt,id,name,createdAt",limit:10,page:1},f.init=c,f.deleteConfirm=m,f.success=u,f.getChatWebsiteChatDispositions=p,f.createOrEditChatWebsiteChatDisposition=g,f.exportSelectedChatWebsiteChatDispositions=h,f.deleteChatWebsiteChatDisposition=v,f.deleteSelectedChatWebsiteChatDispositions=b;var E=!0,A=1;t.$watch("vm_dc.query.filter",function(e,t){E?o(function(){E=!1}):(t||(A=f.query.page),e!==t&&(f.query.page=1),e||(f.query.page=A),f.getChatWebsiteChatDispositions())})}e.$inject=["$cookies","$scope","$state","$q","$timeout","$mdDialog","$document","toasty","api","Auth"],angular.module("app.chat").controller("ChatWebsiteChatDispositionsController",e)}(),function(){"use strict";function e(e,t,n,a,o,i,s,r,l,d){function c(){v.errors=[],r.chatDisposition.save(v.chatDisposition).$promise.then(function(e){v.chatDispositions.unshift(e.toJSON()),o.success({title:"ChatDisposition properly created",msg:v.chatDisposition.name?v.chatDisposition.name+" has been created!":""}),g(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){v.errors=e.data.errors||[{message:e.toString(),type:"api.chatDisposition.save"}];for(var t=0;t"+(e.name||"interaction")+" will be deleted.").ariaLabel("delete interaction").targetEvent(t).ok("OK").cancel("CANCEL");i.show(n).then(function(){h(e)},function(){console.log("CANCEL")})}function u(e){E.chatWebsiteInteractions=e||{count:0,rows:[]}}function p(){E.query.offset=(E.query.page-1)*E.query.limit,E.promise=l.chatWebsite.getInteractions(E.query,u).$promise}function g(e,t){i.show({controller:"CreateOrEditInteractionDialogController",controllerAs:"vm",templateUrl:"app/main/apps/chat/views/chatWebsites/edit/interactions/dialog.html",parent:angular.element(s.body),targetEvent:e,clickOutsideToClose:!0,locals:{chatWebsite:E.chatWebsite,interaction:t,interactions:E.chatWebsiteInteractions.rows,license:null}})}function v(e,t){i.show({controller:"AgentGeneralInteractionController",controllerAs:"vm",templateUrl:"app/main/apps/dashboards/views/general/agent/interaction/agent.general.interaction.dialog.html",parent:angular.element(s.body),targetEvent:e,clickOutsideToClose:!0,onShowing:function(e,n){e.vm.init({id:1,channel:"chat",interaction:t,spy:!0})}})}function h(e){l.chatInteraction.delete({id:e.id}).$promise.then(function(){_.remove(E.chatWebsiteInteractions.rows,{id:e.id}),E.chatWebsiteInteractions.count-=1,E.chatWebsiteInteractions.rows.length||E.getChatWebsiteInteractions(),r.success({title:"Interaction deleted!",msg:e.name?e.name+" has been deleted!":""})}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){vm.errors=e.data.errors||[{message:e.toString(),type:"SYSTEM:GETchatWebsite"}];for(var t=0;t"+E.selectedChatWebsiteInteractions.length+" selected will be deleted.").ariaLabel("delete interactions").targetEvent(e).ok("OK").cancel("CANCEL");i.show(t).then(function(){E.selectedChatWebsiteInteractions.forEach(function(e){h(e)}),E.selectedChatWebsiteInteractions=[]})}var E=this;E.currentUser=d.getCurrentUser(),E.chatWebsite={},E.chatWebsiteInteractions={count:0,rows:[]},E.selectedChatWebsiteInteractions=[],E.query={fields:"createdAt,updatedAt,UserId,ContactId,ChatWebsiteId,id,createdAt,closedAt,Contact.firstName,Owner.name,disposition,ratingValue,ratingType,note,tag",sort:"-createdAt",includeAll:"true",limit:10,page:1},E.init=c,E.deleteConfirm=m,E.success=u,E.getChatWebsiteInteractions=p,E.createOrEditChatWebsiteInteraction=g,E.spychatInteraction=v,E.exportSelectedChatWebsiteInteractions=b,E.deleteChatWebsiteInteraction=h,E.deleteSelectedChatWebsiteInteractions=f;var A=!0,y=1;t.$watch("vm_dc.query.filter",function(e,t){A?o(function(){A=!1}):(t||(y=E.query.page),e!==t&&(E.query.page=1),e||(E.query.page=y),E.getChatWebsiteInteractions())})}e.$inject=["$cookies","$scope","$state","$q","$timeout","$mdDialog","$document","toasty","api","Auth"],angular.module("app.chat").controller("ChatWebsiteInteractionsController",e)}(),function(){"use strict";function e(e,t){function n(e){s.chatWebsite=angular.copy(e),s.ngFlowOptions.target="/api/chat/websites/:id/logo".replace(":id",s.chatWebsite.id),s.chatWebsite.images=[]}function a(e){var n=["png","jpg"];if(!_.includes(n,e.getExtension()))return t.error({title:"Invalid extension: "+e.getExtension(),msg:"Supported only: "+n.join()}),!1;if(e.size>8388608)return t.error({title:"File too big",msg:"The max allowed size for image files is 8 Mb"}),!1;var a={id:e.uniqueIdentifier,file:e,type:"uploading"};return s.chatWebsite.images.unshift(a),!0}function o(){s.ngFlow.flow.opts.headers={"X-Requested-With":"XMLHttpRequest",Authorization:"Bearer "+e.get("motion.token")},s.ngFlow.flow.upload()}function i(e,t){angular.forEach(s.chatWebsite.images,function(t,n){if(t.id===e.uniqueIdentifier){var a=new FileReader;a.readAsDataURL(t.file.file),a.onload=function(e){t.url=e.target.result},t.type="image"}})}var s=this;s.chatWebsite={},s.ngFlowOptions={maxChunkRetries:1,simultaneousUploads:1,testChunks:!1,progressCallbacksInterval:1e3,allowDuplicateUploads:!0},s.ngFlow={flow:{}},s.dropping=!1,s.fileAdded=a,s.upload=o,s.fileSuccess=i,s.init=n}e.$inject=["$cookies","toasty"],angular.module("app.chat").controller("ChatWebsitelogoController",e)}(),function(){"use strict";function e(e,t,n,a,o,i,s,r,l,d){function c(e){E.chatWebsite=e,E.query.id=E.chatWebsite.id,E.getChatWebsiteOfflineMessages()}function m(e,t){var n=i.confirm().title("Are you sure want to delete the offlineMessage?").htmlContent(""+(e.name||"offlineMessage")+" will be deleted.").ariaLabel("delete offlineMessage").targetEvent(t).ok("OK").cancel("CANCEL");i.show(n).then(function(){h(e)},function(){console.log("CANCEL")})}function u(e){E.chatWebsiteOfflineMessages=e||{count:0,rows:[]}}function p(){E.query.offset=(E.query.page-1)*E.query.limit,E.promise=l.chatWebsite.getOfflineMessages(E.query,u).$promise}function g(e,t){i.show({controller:"CreateOrEditOfflineMessageDialogController",controllerAs:"vm",templateUrl:"app/main/apps/chat/views/chatWebsites/edit/offlineMessages/dialog.html",parent:angular.element(s.body),targetEvent:e,clickOutsideToClose:!0,locals:{chatWebsite:E.chatWebsite,offlineMessage:t,offlineMessages:E.chatWebsiteOfflineMessages.rows,license:null}})}function v(e,t){i.show({controller:"ShowOfflineMessageOfflineMessageDialogController",controllerAs:"vm",templateUrl:"app/main/apps/chat/views/chatWebsites/edit/offlineMessages/dialog.html",parent:angular.element(s.body),targetEvent:e,clickOutsideToClose:!0,resolve:{message:["apiResolver","$stateParams",function(e,n){return e.resolve("chatOfflineMessage@get",{fields:"id,body",id:t.id})}]}})}function h(e){l.chatOfflineMessage.delete({id:e.id}).$promise.then(function(){_.remove(E.chatWebsiteOfflineMessages.rows,{id:e.id}),E.chatWebsiteOfflineMessages.count-=1,E.chatWebsiteOfflineMessages.rows.length||E.getChatWebsiteOfflineMessages(),r.success({title:"OfflineMessage deleted!",msg:e.name?e.name+" has been deleted!":""})}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){vm.errors=e.data.errors||[{message:e.toString(),type:"SYSTEM:GETchatWebsite"}];for(var t=0;t"+E.selectedChatWebsiteOfflineMessages.length+" selected will be deleted.").ariaLabel("delete offlineMessages").targetEvent(e).ok("OK").cancel("CANCEL");i.show(t).then(function(){E.selectedChatWebsiteOfflineMessages.forEach(function(e){h(e)}),E.selectedChatWebsiteOfflineMessages=[]})}var E=this;E.currentUser=d.getCurrentUser(),E.chatWebsite={},E.chatWebsiteOfflineMessages={count:0,rows:[]},E.selectedChatWebsiteOfflineMessages=[],E.query={fields:"createdAt,updatedAt,id,ContactId,createdAt",sort:"-createdAt",limit:10,page:1},E.init=c,E.deleteConfirm=m,E.success=u,E.getChatWebsiteOfflineMessages=p,E.createOrEditChatWebsiteOfflineMessage=g,E.showOfflineMessageChatWebsiteOfflineMessage=v,E.exportSelectedChatWebsiteOfflineMessages=b,E.deleteChatWebsiteOfflineMessage=h,E.deleteSelectedChatWebsiteOfflineMessages=f,l.cmContact.get({fields:"id,firstName,lastName",nolimit:"true"}).$promise.then(function(e){E.contacts=_.keyBy(e.rows||[],"id")}).catch(function(e){r.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETcontacts",msg:e.data?JSON.stringify(e.data):e.toString()})});var A=!0,y=1;t.$watch("vm_dc.query.filter",function(e,t){A?o(function(){A=!1}):(t||(y=E.query.page),e!==t&&(E.query.page=1),e||(E.query.page=y),E.getChatWebsiteOfflineMessages())})}e.$inject=["$cookies","$scope","$state","$q","$timeout","$mdDialog","$document","toasty","api","Auth"],angular.module("app.chat").controller("ChatWebsiteOfflineMessagesController",e)}(),function(){"use strict";function e(e,t){function n(t){e.hide(t)}var a=this;a.title="CHAT.OFFLINE_MESSAGE",a.message=t,a.closeDialog=n}e.$inject=["$mdDialog","message"],angular.module("app.chat").controller("ShowOfflineMessageOfflineMessageDialogController",e)}(),function(){"use strict";function e(e,t,n,a,o,i,s,r,l,d){function c(e){f.chatWebsite=e,f.query.id=f.chatWebsite.id,f.query.ChatWebsiteId=f.chatWebsite.id,f.getChatWebsiteProactiveActions()}function m(e,t){var n=i.confirm().title("Are you sure want to delete the chatProactiveAction?").htmlContent(""+(e.name||"chatProactiveAction")+" will be deleted.").ariaLabel("delete chatProactiveAction").targetEvent(t).ok("OK").cancel("CANCEL");i.show(n).then(function(){v(e)},function(){console.log("CANCEL")})}function u(e){f.chatWebsiteProactiveActions=e||{count:0,rows:[]}}function p(){f.query.offset=(f.query.page-1)*f.query.limit,f.promise=l.chatWebsite.getProactiveActions(f.query,u).$promise}function g(e,t){i.show({controller:"CreateOrEditChatProactiveActionDialogController",controllerAs:"vm",templateUrl:"app/main/apps/chat/views/chatWebsites/edit/proactive/dialog.html",parent:angular.element(s.body),targetEvent:e,clickOutsideToClose:!0,locals:{chatWebsite:f.chatWebsite,chatProactiveAction:t,proactive:f.chatWebsiteProactiveActions.rows,license:null}})}function v(e){l.chatProactiveAction.delete({id:e.id}).$promise.then(function(){_.remove(f.chatWebsiteProactiveActions.rows,{id:e.id}),f.chatWebsiteProactiveActions.count-=1,f.chatWebsiteProactiveActions.rows.length||f.getChatWebsiteProactiveActions(),r.success({title:"ChatProactiveAction deleted!",msg:e.name?e.name+" has been deleted!":""})}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){vm.errors=e.data.errors||[{message:e.toString(),type:"SYSTEM:GETchatWebsite"}];for(var t=0;t"+f.selectedChatWebsiteProactiveActions.length+" selected will be deleted.").ariaLabel("delete proactive").targetEvent(e).ok("OK").cancel("CANCEL");i.show(t).then(function(){f.selectedChatWebsiteProactiveActions.forEach(function(e){v(e)}),f.selectedChatWebsiteProactiveActions=[]})}var f=this;f.currentUser=d.getCurrentUser(),f.chatWebsite={},f.chatWebsiteProactiveActions={count:0,rows:[]},f.selectedChatWebsiteProactiveActions=[],f.query={fields:"createdAt,updatedAt,id,name,type,selector,timeout,createdAt",limit:10,page:1},f.arraytype=_.keyBy([{option:"MouseOver",value:"'mouseOver'"},{option:"Timeout",value:"'timeout'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),f.init=c,f.deleteConfirm=m,f.success=u,f.getChatWebsiteProactiveActions=p,f.createOrEditChatWebsiteChatProactiveAction=g,f.exportSelectedChatWebsiteProactiveActions=h,f.deleteChatWebsiteChatProactiveAction=v,f.deleteSelectedChatWebsiteProactiveActions=b;var E=!0,A=1;t.$watch("vm_dc.query.filter",function(e,t){E?o(function(){E=!1}):(t||(A=f.query.page),e!==t&&(f.query.page=1),e||(f.query.page=A),f.getChatWebsiteProactiveActions())})}e.$inject=["$cookies","$scope","$state","$q","$timeout","$mdDialog","$document","toasty","api","Auth"],angular.module("app.chat").controller("ChatWebsiteProactiveActionsController",e)}(),function(){"use strict";function e(e,t,n,a,o,i,s,r,l,d){function c(){v.errors=[],r.chatProactiveAction.save(v.chatProactiveAction).$promise.then(function(e){v.proactive.unshift(e.toJSON()),o.success({title:"ChatProactiveAction properly created",msg:v.chatProactiveAction.name?v.chatProactiveAction.name+" has been created!":""}),g(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){v.errors=e.data.errors||[{message:e.toString(),type:"api.chatProactiveAction.save"}];for(var t=0;t<\/script>',n.end="\n\x3c!-- START Motion Chat Script --\x3e"}var n=this;n.chatWebsite={},n.init=t,n.info={},e.$watch("vm_ac.chatWebsite.remote",function(e){n.script='\n